Risultati da 1 a 6 di 6

Discussione: Estrarre contenuto cella da più fogli excel



  1. #1
    L'avatar di Ivan
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Desio
    Età
    43
    Messaggi
    3
    Versione Office
    Excel 2003
    Likes ricevuti
    0
    Likes dati
    0

    Post Estrarre contenuto cella da più fogli excel

    Ciao avrei bisogno di sapere, se esiste, la funzione per estrarre l'indirizzo mail presente in più fogli all'interno di una cartella. Utilizzo lo stesso foglio per fare le offerte ai clienti che poi salvo con nome, essendo tanti vorrei evitare di aprirli tutti per copiare l'indirizzo. Non hanno tutti lo stesso nome, dato che quando li salvo li nomino: 001_nomedelcliente e così via. Grazie in anticipo. Ivan

  2. #2

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7106
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2059
    Likes dati
    1296
    Ciao Ivan,
    parli di indirizzi e-mail in più fogli da copiare nel foglio in cui presenti l'offerta (che presumo sia quello che hai postato come esempio).
    Bisognerebbe sapere alcune cose:
    1) le e-mail nei diversi fogli occupano sempre la stessa posizione? per esempio sono tutti nel Foglio1 nella stessa posizione di cella?
    2) vuoi che si creino tanti fogli "preventivo" con ognuno una e-mail diversa?
    3) oppure vuoi poter scegliere la mail da inserire (ovvio senza aprire il foglio)?
    Insomma dovresti specificare meglio la tua richiesta
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  3. #3
    L'avatar di Ivan
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Desio
    Età
    43
    Messaggi
    3
    Versione Office
    Excel 2003
    Likes ricevuti
    0
    Likes dati
    0
    Ciao Ges,
    cerco di spiegarmi meglio, speriamo nell'intento, il foglio d'excel che hai visto e che utilizzo è sempre lo stesso, quindi si, l'indirizzo mail è sempre nello stesso punto in tutti i fogli.
    Tutte le offerte sono salvate in una cartella nominata prev_2015, che contiene appunto circa 850 fogli nominati con n°offerta e nome cliente.
    Io, per creare una campagna di mail marketing, avrei bisogno di estrarre tutti gli indirizzi presenti nei fogli (uno per foglio) e poterli salvare su un'altro foglio d'excel, in modo tale da avere un'elenco solo di mail a cui inviare la campagna, senza dover aprire un foglio alla volta per copiare l'indirizzo e salvarlo come dicevo prima, spero di aver reso più comprensibile la mia richiesta, grazie mille. Ivan

  4. #4

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4016
    Versione Office
    2013
    Likes ricevuti
    1225
    Likes dati
    923
    Ciao a tutti,
    @Ivan

    non sono sicuro di aver capito bene visto che nel tuo file di esempio hai messo solo un foglio compilato....
    Comunque, prova con questo codice (associato ad un pulsante nel foglio "Riepilogo"):

    Codice: 
    Option Explicit
    
    
    Sub Importazione()
    Dim Wks As Worksheet, Wks1 As Worksheet, Riga As Long, i As Long
    
    
    Set Wks1 = Worksheets("Riepilogo")
    Range("A2:A" & Rows.Count).ClearContents
    i = 2
    For Each Wks In ThisWorkbook.Sheets
        If Wks.Name <> "Riepilogo" Then
            Wks1.Cells(i, 1).Value = Wks.Range("D16").Value
            i = i + 1
        End If
    Next
    
    
    Set Wks1 = Nothing
    End Sub
    Ti lascio un file di esempio...

    P.S.
    Sposto la discussione nella giusta sezione ("Domande su Excel VBA e MACRO").

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  5. #5
    L'avatar di Ivan
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Desio
    Età
    43
    Messaggi
    3
    Versione Office
    Excel 2003
    Likes ricevuti
    0
    Likes dati
    0
    Ciao Cromagno,
    grazie, non sono riuscito a mandare il foglio d'excel completo con tutte le macro (non fatto dal sottoscritto) perchè di dimensioni superiori a quanto consentito nel foruma, altrimenti l'avrei girato in originale.
    Da quello che mi sembra di capire il codice da te fornito cattura gli indirizzi all'interno di una cartella con più fogli di calcolo presenti (preventivi 001-002-002 ecc.).
    Mentre io ho una cartella di lavoro per ogni cliente, poi con le macro inserite all'interno, la stessa cartella da preventivo può essere trasformata in conferma d'ordine e successivamente in fattura. La posizione dell'indirizzo mail, come per il nome e dati sensibili del cliente restano sempre nelle stesse celle dove sono ora.
    Scusate ragazzi ma non sono un'esperto e quindi faccio anche un pò di fatica a spiegarmi.
    Ivan

  6. #6
    L'avatar di rollis13
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Cordenons
    Messaggi
    809
    Versione Office
    2016 64bit
    Likes ricevuti
    142
    Likes dati
    52
    Premesso che i file da aprire sono tutti nella stessa cartella anche se con nomi diversi, che la cella che contiene le email è sempre la stessa in tutti i file e che il file riepilogativo è altrove, propongo questa soluzione da mettere in un modulo vba. C'è da sistemare solo il percorso reale della cartella contenente i file:
    Codice: 
    Option Explicit
    
    Sub Copia_Da_Molti_File()
    
        Dim cart As String          'cartella con i file
        Dim nfile As String         'nome file da aprire
        Dim wsh As Worksheet        'foglio ricevente
        Dim pru As Long             'prima riga utile
         
        With Application
            .ScreenUpdating = False
            .DisplayAlerts = False
            .EnableEvents = False
        End With
    
        Set wsh = ThisWorkbook.Sheets("Riepilogo")      'bisogna crearlo se manca
        pru = wsh.Cells(Rows.Count, "A").End(xlUp).Row
        cart = "F:\Prove\Dati\"                         'adeguare percorso alle proprie esigenze (attenzione slash finale)
        nfile = Dir(cart & "*.xls*")
         
        Do While nfile <> ""                            'nella cartella ci devono essere solo i file da elaborare
            With Workbooks.Open(cart & nfile)
                With .Sheets("Foglio1")                 'adeguare al nome del foglio del file aperto
                    pru = pru + 1
                    .Range("D16").Copy Destination:=wsh.Range("A" & pru)
                End With
                .Close False
            End With
            nfile = Dir
        Loop
        
        With Application
            .ScreenUpdating = True
            .DisplayAlerts = True
            .EnableEvents = True
        End With
         
    End Sub

  7. I seguenti utenti hanno dato un "Like"


Discussioni Simili

  1. Risposte: 6
    Ultimo Messaggio: 28/01/17, 21:58
  2. Risposte: 5
    Ultimo Messaggio: 01/12/16, 12:36
  3. estrarre il contenuto di una cella in due celle diverse
    Di stefy06 nel forum Domande su Excel in generale
    Risposte: 6
    Ultimo Messaggio: 10/05/16, 07:43
  4. Estrarre contenuto cella da più fogli excel
    Di Ivan nel forum Domande su Excel in generale
    Risposte: 3
    Ultimo Messaggio: 20/12/15, 17:17
  5. Risposte: 12
    Ultimo Messaggio: 12/11/15, 09:38

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •