You are here:--[RISOLTO] Creare lettera diversa per utenti diversi MACRO
[RISOLTO] Creare lettera diversa per utenti diversi MACRO2017-12-21T14:41:23+02:00

Home Forum Domande su Excel VBA e MACRO [RISOLTO] Creare lettera diversa per utenti diversi MACRO

Tag: 

  • Autore
    Articoli
  • Avatargigia78
    Partecipante
      Post totali: 27

      Ciao a tutti,

      ho un problema di questo tipo con questo file di EXCEL. Nel foglio1 ho una serie di clienti con indirizzo email.

      Come potete vedere per ogni cliente è associato un tipo di lettera. E’ possibile che per un cliente, io devo inviare una lettera diversa con un determinato prezzo.

      io vorrei che quando clicco sulla macro, per tutti i clienti mi genera la lettera corrispondente

      es: pippo mi deve generare la lettera 1 , pluto la lettera 2, paperino la lettera 3 e via dicendo.

      nelle rispettive lettere comunque nelle celle F6 deve comparire il nome del cliente, mentre nella cella F14 il prezzo.

      E alla fine dovrebbe creare un PDF automatico con scritto LETTERA1-CLIENTE oppure LETTERA2-CLIENTE

      ah mi sono dimenticata. nel caso io voglia escludere il cliente dall’invio dell’aumento dei prezzi, vorrei una casella tipo ESCLUDI, che se metto NO, non invia quella lettera. Lo lascia stare senza nemmeno generare il PDF

      Chi mi può aiutare, per favore?

      Grazie

       

       

       

       

      • Questo argomento è stato modificato 1 anno, 10 mesi fa da BySalv BySalv.
      • Questo argomento è stato modificato 1 anno, 9 mesi fa da BySalv BySalv.
    • BySalvBySalv
      Amministratore del forum
        Post totali: 520

        Ciao gigia78, eccoti il file con le macro, sono 2, anche se poteva essere 1 sola, in quanto una scrive i dati e l’altra crea il file Pdf.

        metti il file in una cartella e premi sul pulsante invia, ti vengono generati tutti i file pdf dove al cliente e messo “si” quello con “no” non viene generato, mi raccomando in minuscolo “si/no” in quanto riconosce il maiuscolo e non la genera.

        Ciao By Sal  :bye:

        Ecco le 2 Macro

        Sub Invio()
        Dim sh1 As Worksheet, sh As Worksheet
        Dim r, c, x, d, d1, d2, d3, n
        
        Set sh1 = Worksheets("Clienti")
        Application.ScreenUpdating = False
        r = sh1.Cells(Rows.Count, 1).End(xlUp).Row
        For x = 2 To r
            If sh1.Cells(x, 5) = "si" Then
                d = sh1.Cells(x, 1)
                d1 = sh1.Cells(x, 2)
                d2 = sh1.Cells(x, 3)
                d3 = sh1.Cells(x, 4)
                Set sh = Worksheets(d2)
                sh.Cells(7, 6) = d1
                sh.Cells(14, 6) = d3
                n = d2 & " " & d & " invio del " & Replace(Date, "/", "-") & ".pdf"
                Call SalvaPDF(sh.Name, n)
                sh1.Activate
            End If
        Next x
        MsgBox "Operazione terminata", vbInformation, "Creazione PDF"
        End Sub
        
        Sub SalvaPDF(FG, NN)
        Dim r, ind, ff
        Set ff = Worksheets(FG)
        ff.Select
        ind = ActiveWorkbook.Path & "\" & NN
        ff.Range("A1:H29").Select
            ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ind, Quality:= _
                xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
                OpenAfterPublish:=False
        ff.Cells(1, 1).Select
        End Sub
      • Avatargigia78
        Partecipante
          Post totali: 27

          Grazie mille! adesso, la provo, e vedo se funziona.

        • Avatargigia78
          Partecipante
            Post totali: 27

            Grazie, ho risolto. funziona.

            L’ho modificato secondo le mie esigenze, ma alla fine funziona :)

          • BySalvBySalv
            Amministratore del forum
              Post totali: 520

              Ciao Gigia grazie per il riscontrol

              alla prossima Ciao By Sal  :bye:

            La discussione ‘[RISOLTO] Creare lettera diversa per utenti diversi MACRO’ è chiusa a nuove risposte.

            Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

            Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

            Chiudi