|
Rank: AiutAmico
Iscritto dal : 11/29/2008 Posts: 217
|
salve ho un elenco di nominativi creato in excel in ordine alfabetico che è di 36 pagine è vorrei suddividerlo in due colonne per foglio sempre in ordine alfabetico si può fare? sistema op xp prof office 2007 grazie
|
|
|
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve con il metodo taglia incolla non riesci a risolvere? saluti Giap
|
|
Rank: AiutAmico
Iscritto dal : 11/29/2008 Posts: 217
|
36 pagine 1700 nominativi è un pò lungo, cercavo un modo più veloce
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve Un metodo affidato ad una macro può essere questo: Sub Trasla_Pagine() Application.ScreenUpdating = False With Sheets("foglio2") .Cells.ClearContents End With With Sheets("Foglio1") Nrow = .Range("A1").End(xlDown).Row riga = 1 riga2 = 1 Pagine = .HPageBreaks.Count If .HPageBreaks(Pagine).Location.Row < Nrow Then Pagine = Pagine + 1 Ex = Pagine End If For Pg = 1 To Pagine PD = Pg Mod 2 With Sheets("Foglio2") uriga = .Range("A65536").End(xlUp).Row End With Select Case PD Case 0 n = 3 Case Is > 0 n = 1 End Select If n = 1 And uriga > 1 Then riga2 = uriga + 1 End If If Pg = Ex Then Urpag = Cells(riga, 1).End(xlDown).Row Else Urpag = .HPageBreaks(Pg).Location.Row - 1 End If Range(.Cells(riga, 1), .Cells(Urpag, 1)).Copy Sheets("Foglio2").Cells(riga2, n) riga = Urpag + 1 Next Pg End With Application.ScreenUpdating = True End Sub Il codice copia la lista dal foglio1 al foglio2 su due colonne. saluti Giap
|
|
Rank: AiutAmico
Iscritto dal : 11/29/2008 Posts: 217
|
ciao scusa la mia ignoranza in materia sai dirmi la procedura?(passo passo) grazie
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve la macro per funzionare prevede la seguente situazione: 1) che la tabella dei nomi sia nel Foglio1 2) che sia presente (vuoto) il Foglio2 3) che la tabella sia in Colonna A del Foglio1 Procedura: Apri l'editor di Vba ( si accede mediante la pressione dei tasti Alt+F11) Dal Menù Inserisci scegli "Modulo" e ti si aprirà una finestra bianca Incolla all'interno della finestra il codice che ti ho postato (da Sub a End Sub) Dopo aver incollato il codice, Alt+F11 ti riporta al foglio di excel Per eseguire la macro Dalla Barra multifunzione>Scheda Sviluppo>Macro>nella casella Nome Macro selezionare il nome della macro "Trasla_Pagine" e clicca su "Esegui" se hai fatto tutto bene troverai il risultato nel foglio2 saluti Giap
|
|
Rank: AiutAmico
Iscritto dal : 11/29/2008 Posts: 217
|
non trovo: Per eseguire la macro Dalla Barra multifunzione>Scheda Sviluppo>Macro>nella casella Nome Macro selezionare il nome della macro "Trasla_Pagine" e clicca su "Esegui" è sul foglio excel ?
|
|
Rank: AiutAmico
Iscritto dal : 5/10/2010 Posts: 723
|
a10n11 ha scritto:salve se hai fatto tutto bene troverai il risultato nel foglio2 saluti Giap Ciao, scusa se m'intrometto: ...sei di una chiarezza, una sintesi inaudite: riesci a far sembrare tutta questa materia, tanto affascinante quanto complessa, una cosa da ragazzi... complimenti! E QUESTO sono io ogni volta che leggo le tue spiegazioni.... Buona serata, eZio @marielucca: si, devi andare nel menu' della barra delle applicazioni di Excel (quella in alto) e dovresti avere il menù Strumenti/Macro/Macro e dovresti vedere l'elenco delle macro che ci sono in quel file... devi selezionarla e cliccare Esegui, il resto lo fa lui............
|
|
Rank: AiutAmico
Iscritto dal : 11/29/2008 Posts: 217
|
mi dice: errore di run-time 9 indice non trovato
|
|
Rank: AiutAmico
Iscritto dal : 5/10/2010 Posts: 723
|
... prova a rileggere attentamente il testo della macro scritta da a10n11 e vedi se hai nominato correttamente i tuoi fogli come ha scritto lui, altrimenti modifica nella macro i nomi dei fogli nominandoli col nome dei tuoi... se non trova l'indice molto probabilmente la causa è quella... ciao eZio
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve ipotizzando che hai eseguito tutti i passaggi indicati e che la struttura del tuo file sia come quella ipotizzata, Potrebbe essere evocato come ti è successo l'errore di Run-Time 9 perchè l'oggetto HPageBreaks vorrebbe che si lavori in modalità di visualizzazione interruzioni di pagina. Nel mio Excel non da alcun problema ma visto il tuo, prova a modifcare la macro come segue: Code: Sub Trasla_Pagine() Application.ScreenUpdating = False ActiveWindow.View = xlPageBreakPreview With Sheets("foglio2") .Cells.ClearContents End With With Sheets("Foglio1") Nrow = .Range("A1").End(xlDown).Row riga = 1 riga2 = 1 Pagine = .HPageBreaks.Count If .HPageBreaks(Pagine).Location.Row < Nrow Then Pagine = Pagine + 1 Ex = Pagine End If For Pg = 1 To Pagine PD = Pg Mod 2 With Sheets("Foglio2") uriga = .Range("A65536").End(xlUp).Row End With Select Case PD Case 0 n = 3 Case Is > 0 n = 1 End Select If n = 1 And uriga > 1 Then riga2 = uriga + 1 End If If Pg = Ex Then Urpag = Cells(riga, 1).End(xlDown).Row Else Urpag = .HPageBreaks(Pg).Location.Row - 1 End If Range(.Cells(riga, 1), .Cells(Urpag, 1)).Copy Sheets("Foglio2").Cells(riga2, n) riga = Urpag + 1 Next Pg End With ActiveWindow.View = xlNormalView Application.ScreenUpdating = True End Sub
prova a e fa sapere. saluti Giap
|
|
Guest |