Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305

    "stampa unione" in excel

    cè un sistema per fare una specie di stampa unione in excel?

    Ho bisogno che excel prenda i nomi da un elenco e che crei tot fogli quanti sono i nomi.

    Esempio: ho un elenco di allievi (pippo, pluto, topolino) nel foglio "dati"
    Ho un foglio "base" in cui ho la voce allievo in cui vicino ad essa deve comparire il nome dell'allievo.
    Per ogni allievo mi deve creare un foglio, quindi un foglio (oltre quello base) "pippo", "pluto", ect...


    Si puo fare?

    Grazie
    Luisa
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Se ho capito bene è sufficiente che crei una macro così

    codice:
    Sub creafogli()
    For Each cella In Selection.Cells
    Worksheets.Add().Name = cella
    Next
    End Sub
    Selezioni le tue celle contenenti i nomi ed esegui la macro.

  3. #3
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305
    Originariamente inviato da nicola75ss
    Se ho capito bene è sufficiente che crei una macro così

    codice:
    Sub creafogli()
    For Each cella In Selection.Cells
    Worksheets.Add().Name = cella
    Next
    End Sub
    Selezioni le tue celle contenenti i nomi ed esegui la macro.
    ok, cosi mi crea i fogli con i nominativi ma come faccio a dirgli che mi deve creare un documento uguale a quello base

    Esempio (il mio documento di excel contiene:
    Scheda di lavoro del giorno ___________

    Nome:____________
    Cognome:_________
    Città:_____________

    )

    Mettiamo al caso che voglia fare x ogni giorno una scheda, quindi in un foglio a parte metto le date e eseguo la macro creafogli. Ma ognuno di quei fogli deve contenere pure la scheda di lavoro e in + compilata con il nome di chi ha lavorato quel giorno. (es. il giorno 1/01/08 lavora Pippo Pippi di Torino, il 2 lavora Pluto Pluti di Genova, ect....?

    Spero di esermi spiegata...
    Grazie
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  4. #4
    Utente di HTML.it L'avatar di luck
    Registrato dal
    Oct 2004
    Messaggi
    550
    mai pensato ad access?

  5. #5
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305
    Originariamente inviato da luck
    mai pensato ad access?
    in che senso?

    access lo userei anche ma io ho un foglio predefinito in excel da compilare....
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  6. #6
    Utente di HTML.it L'avatar di luck
    Registrato dal
    Oct 2004
    Messaggi
    550
    Originariamente inviato da luisa227
    in che senso?

    access lo userei anche ma io ho un foglio predefinito in excel da compilare....
    ok allora io imposterei una macro che fa questo (prova con il registratore, in caso si aggiusta)

    - scrive i campi della scheda master
    - sposta e copia (crea una copia) della scheda master
    - eventualmente storicizza i valori nel nuovo foglio (se ci sono formule)

    di più non ti si può dire non sapendo com'è strutturato il tuo foglio dati di origine

    ciao
    L.

  7. #7
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305
    CI HO GIà PROVATO CON MACRO... ho fatto un pezzo...
    ho creato fogliO "DATI" strutturato cosi:

    Pino | Torino | 6
    Paolo |Genova |4
    Mario | Firenze |9


    e foglio "base" strutturato cosi:
    Nome: | ____________
    Città:| _____________
    Voro:|_____________

    sono riuscita a creare tot fogli uguali alla base nominati col nome della mia prima colonna, quindi ho un foglio Pino contenente la scheda Base, ect...

    Non riesco però a riempire la scheda, ossia vicino a nome mi deve comparire il nome pino.

    Con la macro registrata mi prende sempre il range di una cella specifica (quindi a1 sarà sempre a1)... come faccio a dirgli: "prendi ai, poi a2 e poi a3 e copiali prima in foglio di pino, pio in fogli di mario...?
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  8. #8
    Utente di HTML.it L'avatar di luck
    Registrato dal
    Oct 2004
    Messaggi
    550
    la scriviamo insieme?

    come si chiama il foglio di lavoro contenente la scheda?
    in che celle dobbiamo inserire rispettivamente nome città lavoro (intendo il riferimento cella) nella scheda?

  9. #9
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305
    codice:
    Sub AggiungiNuovoFoglio()
    'per ogni cella selezionata
    For Each cella In Selection.Cells
    'copia il fogli base
    Sheets("base").Copy After:=Worksheets(Worksheets.Count)
    'dacci il nome della cella
    ActiveSheet.Name = cella
    
    'Selection.Copy
    'ActiveSheet.Paste
    'Selection.Paste
    
    
    Next
    End Sub
    LA SCHEDA SI CHIAMA "BASE", i dati "dati"
    in a1 cè scritto Nome
    a2 Citta
    a3 voto
    in b1 ci va il nome (es. Pippo)
    in b2 la città
    in b3 il voto
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  10. #10
    Utente di HTML.it L'avatar di luck
    Registrato dal
    Oct 2004
    Messaggi
    550
    tiè, aggiustato un po' il tiro alla macro, nel foglio DATI seleziona SOLO i nomi prima di lanciare la macro...

    codice:
    Sub AggiungiNuovoFoglio()
    
        'per ogni cella selezionata
        For Each cella In Selection.Cells
            'copia il fogli base
            Sheets("base").Copy After:=Worksheets(Worksheets.Count)
            'dacci il nome della cella
            ActiveSheet.Name = cella
            
            'inserisce i valori nel foglio nuovo
            Sheets(cella.Value).Range("B1") = Sheets("dati").Cells(cella.Row, 1)
            Sheets(cella.Value).Range("B2") = Sheets("dati").Cells(cella.Row, 2)
            Sheets(cella.Value).Range("B3") = Sheets("dati").Cells(cella.Row, 3)
        Next
        
    End Sub
    fai sapere, ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.