Risultati da 1 a 17 di 17

Discussione: richiesta estrazione dati da una tabella per creare fattura o altro documento



  1. #1
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0

    richiesta estrazione dati da una tabella per creare fattura o altro documento

    Ho creato un file nel quale Ŕ esistente una tabella nella quale importo i dati mediante un modulo di inserimento usando delle macro. Ora mi si pone il problema opposto, voglio reimportare un qualunque dato su un modulo prestabilito per poi eventualmente essere stampato. Ho trovato alcune soluzioni con delle formule, basandomi su vari tutorial. Faccio presente che il mio EXCEL Ŕ un 2007 pertanto alcune nuove formule tipo "aggrega" ecc non le posso utilizzare. La mia domanda Ŕ esiste un sistema migliore di quello che ho usato ed eventualmente basarmi su dei tutorial specifici? E' possibile fare la stessa operazione utilizzando delle macro od Ŕ meglio utilizzare le formule. Grazie per l'aiuto. :93:

    P.S: al presente allego il file
    File Allegati File Allegati

  2. #2
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da danilodart Visualizza Messaggio
    Ho creato un file nel quale Ŕ esistente una tabella nella quale importo i dati mediante un modulo di inserimento usando delle macro. Ora mi si pone il problema opposto, voglio reimportare un qualunque dato su un modulo prestabilito per poi eventualmente essere stampato. Ho trovato alcune soluzioni con delle formule, basandomi su vari tutorial. Faccio presente che il mio EXCEL Ŕ un 2007 pertanto alcune nuove formule tipo "aggrega" ecc non le posso utilizzare. La mia domanda Ŕ esiste un sistema migliore di quello che ho usato ed eventualmente basarmi su dei tutorial specifici? E' possibile fare la stessa operazione utilizzando delle macro od Ŕ meglio utilizzare le formule. Grazie per l'aiuto. :93:

    P.S: al presente allego il file
    Ciao Danilo, per consigliarti qualcosa dovremmo prima capire cosa vuoi, cerca di essere pi¨ descrittivo e conciso, e spiega esempio che nel foglio1 nella cella/intervallo A1:A200 vorresti ecc ecc ...............per cui lascia perdere come hai risolto il problema precedente altrimenti si va in confusione
    ciao

  3. #3
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0
    Scusatemi ma pensavo di poter evitare la spiegazione con il file allegato. Per capirci all'interno del file esiste un foglio chiamato DataBasePazienti e un foglio ProspettoFattura. Il primo foglio comprende una tabella con vari campi partendo dalla colonna A fino alla colonna V dove sono inseriti i vari dati da estrapolare e mettere poi nel Foglio ProspettoFattura. Il mio problema Ŕ il seguente prendere il dato dalla tabella A-4 e portarlo nel foglio "ProspettoFattura" alla posizione F-50. Stessa operazione con il dato seguente B-4 (DataBasePazienti) in F-51 (ProspettoFattura), B-5 (DataBasePazienti) in F-52 (ProspettoFattura), B-6 (DataBasePazienti) in F-53 (ProspettoFattura), B-7 (DataBasePazienti) in G-53 (ProspettoFattura), B-8 (DataBasePazienti) in G-54 (ProspettoFattura), e cosi via da completare i campi della fattura (evidenziati in giallo). Chiedo questo tipo di operazione si fa con una macro o Ŕ pi¨ comodo con delle formule. A secondo della Vostra esperienza se devo farlo con la macro come faccio e se devo farlo con le formule quali usare e come. Spero di non essere stato troppo confusionario. Vi riallego il file se pu˛ essere d'aiuto. Grazie mille:90:
    File Allegati File Allegati

  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,

    @danilodart
    secondo me dipende solo da come ti verrebbe pi¨ comoda questa importazione....

    Lato Formule:
    dovresti utilizzare una serie di "convalida dati dinamici" (utilizzando dei nomi definiti per rendere tutto pi¨ "pratico") nelle celle F5, F6, F7, etc.... per essere sicuro di importare i dati per il paziente corretto.

    Lato VBA:
    Ti potrebbe bastare un doppio clic (nel foglio "DataBasePazienti") sopra il paziente di cui vuoi esportare i dati nel foglio "Prospetto Fattura".

    [EDIT]
    Lato formule potrebbe anche bastare una "X" (sempre nel foglio "DataBasePazienti") di fianco ai dati che vuoi esportare.

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

  5. #5
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    LocalitÓ
    Torino
    EtÓ
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Danilo Prova a dare un occhiata a questo mio Progetto e fammi sapere Ciao

    Codice: 
    Sub Trasferimento_Dati()
    On Error Resume Next
    Foglio2.Range("A50:V50").Value = ""
      
    Call Trasferimento_Dati_Foglio2
    End Sub
    
    
    
    
    Sub Trasferimento_Dati_Foglio2()
    On Error Resume Next
        'Imposta come Foglio di Destinazione il foglio 2
        Dim FoglioID As Object
        Set FoglioID = Foglio2
        
        'Imposta Come Intervallo di Destinazione la Prima _
        Riga Vuota Partendo Dall'ultima (A65536)
        'l'intervallo Deve Essere Ridimensionato con lo _
        Stesso Numero di Colonne Contenute
        'nell'intervallo di Origine, in Questo Esempio _
        l'intervallo di Origine Ŕ Composto da 4 Colonne
        'Dato che Ŕ Rappresentato Dalle Celle A2:D2 e _
        Quindi con Resize l'intervallo di Destinazione
        'Che Ŕ Composto da una sola Colonna (A) Viene _
        Ridimensionato a 4
        Dim RangeID As Range
        Set RangeID = FoglioID.Cells(50, 1).End(xlUp).Offset(1, 0).Resize(1, 22)
    
    
        'Con Questa Istruzione le Formule Contenute nel _
        Foglio di Origine Vengono Trasformate in
        'Valori nel Foglio di Destinazione
        RangeID.Value = Range("A4:V4").Value
        
        'MsgBox "I Dati Sono Stati Copiati...!", vbInformation, "Attenzione...!"
    End Sub
    File Allegati File Allegati
    Ultima modifica fatta da:Gerardo ZuccalÓ; 26/02/16 alle 21:45 Motivo: manca codice VBA grazie

  6. #6
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0
    Ho visto che hai creato una macro ma non riesco a capire il funzionamento, anche perchŔ nel mio foglio di importazione le celle non sono disposte in maniera ordinata. Per ora grazie provo a vedere come funziona.

  7. #7
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Ciao Maurizio bentornato! un piccolo memorandum....
    Insieme all'allegato inserisci anche il codice VBA,
    molti hanno perso questo bel vizio, adesso mi sei capitato tu ma ovviamente vale per tutti. perchŔ lo ritengo importante per i motivi qui sotto citati..
    Ciao Maurizio e grazie di tutto!
    Regola nr. 12 "Insieme all'allegato postare Codici VBA e formule"
    Oltre ai file allegati Ŕ buona norma pubblicare anche le formule o i codici VBA utilizzati, perchŔ non sempre si possono aprire i file allegati per problemi di banda e problemi con telefonini che non possono accedere all'Editor VBA, cosi da non avere il piacere di capire il codice scritto, oltretutto i file potrebbero non essere pi¨ disponibili nel tempo.
    cioa

  8. #8
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0
    Ciao Cromagno qui nasce il problema come si fa la "convalida dati dinamica", l'unica convalida dati che conosco Ŕ quella ad elenco. Fino qui ci arrivo poi il buio. Devo vedermi qualche video tutorial che spiega questo. Anche se secondo me forse con una macro VBA dovrei andare meglio. Il problema Ŕ che non so crearla. Esiste qualche video tutorial da vedere? Grazie e scusa del disturbo :252:

  9. #9
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    LocalitÓ
    Torino
    EtÓ
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ti posso Consigliare a questo Punto di Adottare un Ecamotage facendo in questo modo :

    1 ) Aggiungi un Nuovo Foglio che poi VerrÓ nascosto .
    2 ) Su un nuovo Modulo Crei una cosa di Questo Genere , Poco ortodosso ma molto efficace , Esempio :
    Foglio5.Range("A1").Value="" & Foglio1.Range("A4").Value
    Foglio5.Range("B1").Value="" & Foglio1.Range("B14").Value
    Foglio5.Range("C1").Value="" & Foglio1.Range("C30").Value

    ecc...! fino a che non siano Riempite tutte le celle dalla A alla V Del Foglio 5.
    Cosi facendo , Avrai Sempre le tue celle con dei dati Sparsi nel tuo foglio di Lavoro (Foglio1) .
    Per˛ Avrai sentre in tempo Reale e in modo Lineare i tuoi dati sul Foglio 5 .
    3 ) Poi non dovrai fare altro che spostare L'evento di Copiature che ti ho appena fornito dal Foglio 1 al foglio 5 Lasciando tutto il Resto invariato , e il gioco e fatto.
    Ciao

  10. #10
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0
    Aiuto:69:scusa Maurizio ma sono ignorante dove recupero il codice VBA da inviare. Poi se non ho capito male dovrei indicare lo sviluppo delle formule che utilizzo? ciao grazie :182:

  11. #11
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    LocalitÓ
    Torino
    EtÓ
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Gerardo questa mi ginge nuova , PerchŔ non basta L'allegato che tutti possono scaricare e visionare a suo piacimento .
    Devo anche aggiungere il suo codice VBA , PerchŔ e per qual motivo .
    Il mio era un Aiuto non una Richiesta.
    Comunque sia d'ora in Avanti far˛ cosi , Ciao

  12. #12

    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
    Citazione Originariamente Scritto da A.Maurizio Visualizza Messaggio
    Ciao Gerardo questa mi ginge nuova , PerchŔ non basta L'allegato che tutti possono scaricare e visionare a suo piacimento .
    Devo anche aggiungere il suo codice VBA , PerchŔ e per qual motivo .
    Il mio era un Aiuto non una Richiesta.
    Comunque sia d'ora in Avanti far˛ cosi , Ciao
    Ciao Maurizio,
    provo a rispondere io per Gerardo....

    I file che alleghiamo sono disponibili fin quando li teniamo nel nostro spazio personale (del nostro account). Come puoi immaginare, questo spazio non Ŕ illimitato (io ho giÓ dovuto svuotarlo 1 volta) quindi, quando cancelli i vecchi allegati (per fare spazio) per poterne allegare di nuovi, quelli cancellati non saranno pi¨ disponibili nelle vecchie discussioni e di conseguenza quel thread, pur essendo stato risolto, risulterebbe "vuoto" e/o senza una soluzione comprensibile per chi lo dovesse consultare in futuro.

    Ciao
    Tore

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

  13. #13
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da A.Maurizio Visualizza Messaggio
    Ciao Gerardo questa mi ginge nuova , PerchŔ non basta L'allegato che tutti possono scaricare e visionare a suo piacimento .
    Devo anche aggiungere il suo codice VBA , PerchŔ e per qual motivo .
    Il mio era un Aiuto non una Richiesta.
    Comunque sia d'ora in Avanti far˛ cosi , Ciao
    Ciao Maurizio, niente di grave, il mio Ŕ solo un consiglio per il motivi sopra citati anche perchŔ se non lo facciamo noi che siamo i "vecchi" del forum, non possiamo mica aspettarcelo dai newbie, ciao Maurizio
    :261:

  14. #14
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0
    ciao Maurizio non so se hai guardato il file che ho allegato, ma se non ho capito male creo un foglio con l'impostazione del mio prospetto fattura poi negli spazi inserisco le istruzioni che mi hai inviato, in teoria dovrebbero caricarsi i dati, poi eseguo le istruzioni di ritorno nel foglio 2. Ora ci provo e vedo cosa succede.
    Ciao :182: spero di aver capito bene.

  15. #15
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    LocalitÓ
    Torino
    EtÓ
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Danilo Scarica e leggi bene prima di Visualizzare il risultato finale Premendo il Tasto Hola y nos vemos ma˝ana

    Codice: 
    Sub Crea_Linea_Dati()On Error Resume Next
    Foglio3.Range("A11").Value = Foglio1.Range("A4").Value
    Foglio3.Range("B11").Value = Foglio1.Range("B5").Value
    Foglio3.Range("C11").Value = Foglio1.Range("C6").Value
    
    
    Foglio3.Range("D11").Value = Foglio1.Range("D8").Value
    Foglio3.Range("E11").Value = Foglio1.Range("E9").Value
    Foglio3.Range("F11").Value = Foglio1.Range("F10").Value
    Foglio3.Range("G11").Value = Foglio1.Range("G11").Value
    
    
    Foglio3.Range("H11").Value = Foglio1.Range("H8").Value
    Foglio3.Range("I11").Value = Foglio1.Range("I7").Value
    Foglio3.Range("J11").Value = Foglio1.Range("J6").Value
    
    
    Foglio3.Range("K11").Value = Foglio1.Range("K12").Value
    Foglio3.Range("L11").Value = Foglio1.Range("L13").Value
    Foglio3.Range("M11").Value = Foglio1.Range("M14").Value
    Foglio3.Range("N11").Value = Foglio1.Range("N15").Value
    
    
    Foglio3.Range("O11").Value = Foglio1.Range("O9").Value
    Foglio3.Range("P11").Value = Foglio1.Range("P9").Value
    Foglio3.Range("Q11").Value = Foglio1.Range("Q9").Value
    
    
    Foglio3.Range("R11").Value = Foglio1.Range("R6").Value
    Foglio3.Range("S11").Value = Foglio1.Range("S7").Value
    Foglio3.Range("T11").Value = Foglio1.Range("T8").Value
    
    
    Foglio3.Range("U11").Value = Foglio1.Range("U4").Value
    Foglio3.Range("V11").Value = Foglio1.Range("V5").Value
    
    
    Call Trasferimento_Dati
    End Sub
    File Allegati File Allegati
    Ultima modifica fatta da:Gerardo ZuccalÓ; 27/02/16 alle 11:12 Motivo: Mancava codice VBA

  16. #16
    L'avatar di A.Maurizio
    Clicca e Apri
    Data Registrazione
    Aug 2015
    LocalitÓ
    Torino
    EtÓ
    56
    Messaggi
    383
    Versione Office
    2013
    Likes ricevuti
    44
    Likes dati
    0
    Ciao Cromagno , Grazie infinite per il tuo Intervento Chiarificatore , questa volta spero d'aver fatto tutto giusto in quanto e la prima volta che faccio cose di questo genere all'interno di un Forum .
    Questo era il codice per intero ciao a Tutti Sinceri Saluti da A.Maurizio

    Codice: 
    Sub Trasferimento_Dati()
    On Error Resume Next
    Foglio2.Range("A50:V50").Value = ""
    
    Call Trasferimento_Dati_Foglio2
    End Sub
    
    
    
    
    Sub Trasferimento_Dati_Foglio2()
    On Error Resume Next
    'Imposta come Foglio di Destinazione il foglio 2
    Dim FoglioID As Object
    Set FoglioID = Foglio2
    
    'Imposta Come Intervallo di Destinazione la Prima _
    Riga Vuota Partendo Dall'ultima (A65536)
    'l'intervallo Deve Essere Ridimensionato con lo _
    Stesso Numero di Colonne Contenute
    'nell'intervallo di Origine, in Questo Esempio _
    l'intervallo di Origine Ŕ Composto da 4 Colonne
    'Dato che Ŕ Rappresentato Dalle Celle A2:D2 e _
    Quindi con Resize l'intervallo di Destinazione
    'Che Ŕ Composto da una sola Colonna (A) Viene _
    Ridimensionato a 4
    Dim RangeID As Range
    Set RangeID = FoglioID.Cells(50, 1).End(xlUp).Offset(1, 0).Resize(1, 22)
    
    
    'Con Questa Istruzione le Formule Contenute nel _
    Foglio di Origine Vengono Trasformate in
    'Valori nel Foglio di Destinazione
    RangeID.Value = Foglio3.Range("A11:V11").Value
    
    'MsgBox "I Dati Sono Stati Copiati...!", vbInformation, "Attenzione...!"
    End Sub
    
    Sub Crea_Linea_Dati()
    On Error Resume Next
    Foglio3.Range("A11").Value = Foglio1.Range("A4").Value
    Foglio3.Range("B11").Value = Foglio1.Range("B5").Value
    Foglio3.Range("C11").Value = Foglio1.Range("C6").Value
    
    
    Foglio3.Range("D11").Value = Foglio1.Range("D8").Value
    Foglio3.Range("E11").Value = Foglio1.Range("E9").Value
    Foglio3.Range("F11").Value = Foglio1.Range("F10").Value
    Foglio3.Range("G11").Value = Foglio1.Range("G11").Value
    
    
    Foglio3.Range("H11").Value = Foglio1.Range("H8").Value
    Foglio3.Range("I11").Value = Foglio1.Range("I7").Value
    Foglio3.Range("J11").Value = Foglio1.Range("J6").Value
    
    
    Foglio3.Range("K11").Value = Foglio1.Range("K12").Value
    Foglio3.Range("L11").Value = Foglio1.Range("L13").Value
    Foglio3.Range("M11").Value = Foglio1.Range("M14").Value
    Foglio3.Range("N11").Value = Foglio1.Range("N15").Value
    
    
    Foglio3.Range("O11").Value = Foglio1.Range("O9").Value
    Foglio3.Range("P11").Value = Foglio1.Range("P9").Value
    Foglio3.Range("Q11").Value = Foglio1.Range("Q9").Value
    
    
    Foglio3.Range("R11").Value = Foglio1.Range("R6").Value
    Foglio3.Range("S11").Value = Foglio1.Range("S7").Value
    Foglio3.Range("T11").Value = Foglio1.Range("T8").Value
    
    
    Foglio3.Range("U11").Value = Foglio1.Range("U4").Value
    Foglio3.Range("V11").Value = Foglio1.Range("V5").Value
    
    
    Call Trasferimento_Dati
    End Sub
    
    Sub Pulsante2_Click()
    Call Crea_Linea_Dati
    End Sub
    Ultima modifica fatta da:cromagno; 02/03/16 alle 21:59 Motivo: Inserito codice tra i tag CODE...

  17. #17
    L'avatar di danilodart
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    levico terme
    Messaggi
    18
    Versione Office
    excel2007
    Likes ricevuti
    0
    Likes dati
    0
    Grazie per le istruzioni ora provo a vedere se ho capito tutto chiaro. Se vedete un computer che fuma Ŕ il mio......intanto grazie:176:

Discussioni Simili

  1. Richiesta supporto programmino excel per estrazione dati da DB
    Di Drugoh83 nel forum Domande su Excel VBA e MACRO
    Risposte: 17
    Ultimo Messaggio: 08/11/16, 17:17
  2. Estrazione condizionata dei dati da una tabella
    Di GioPL nel forum Domande su Excel VBA e MACRO
    Risposte: 4
    Ultimo Messaggio: 15/07/16, 20:53
  3. Estrazione dati da tabella con duplicati
    Di Rubik72 nel forum Domande su Excel in generale
    Risposte: 12
    Ultimo Messaggio: 20/02/16, 20:52
  4. Estrazione dati da tabella
    Di alfrimpa nel forum Domande su Excel in generale
    Risposte: 4
    Ultimo Messaggio: 19/02/16, 22:14
  5. Creare tabella con dati in altro foglio
    Di Obscures nel forum Domande su Excel in generale
    Risposte: 10
    Ultimo Messaggio: 05/10/15, 18:31

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
  •