Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[Excel] Macro per generare righe

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[Excel] Macro per generare righe

Postdi Venerdi » 24/04/08 14:58

Un caro saluto al forum; vorrei chiedere aiuto per un nuovo problemino da risolvere.

Solito elenco Excel di n righe ed n colonne che riduco a 2r + intestazione per 5c per porre il quesito….

Data1---------Nome1------Nome2-----Nome3-----Data2
03/03/2008---ddd----------eee----------fff--------25/02/2008
01/03/2008---ggg----------hhh----------mmm----27/02/2008

Dovrei utilizzare una macro che generi su un altro foglio dei record. Questi record dovrebbero essere generati in funzione dei due campi data che sono contenuti su ciascuna riga.
In sostanza, nell’esempio, riga1 dovrebbe generare dei record, ripetendo il contenuto a partire da Data2 fino ad arrivare al giorno precedente a Data1, inserendo delle nuove Data1, come fossero un numeratore.

Questo è l’output atteso da riga1

25/02/2008---ddd----------eee----------fff------------25/02/2008
26/02/2008---ddd----------eee----------fff------------25/02/2008
27/02/2008---ddd----------eee----------fff------------25/02/2008
28/02/2008---ddd----------eee----------fff------------25/02/2008
29/02/2008---ddd----------eee----------fff------------25/02/2008
01/03/2008---ddd----------eee----------fff------------25/02/2008
02/03/2008---ddd----------eee----------fff------------25/02/2008
(come si vede, si parte da Data2 e si termina a Data1 - 1)

Questo è l’output atteso da riga1
28/02/2008----ggg---------hhh--------mmm----------28/02/2008
29/02/2008----ggg---------hhh--------mmm----------28/02/2008

Si può fare?

Grazie
V.
Avatar utente
Venerdi
Utente Junior
 
Post: 43
Iscritto il: 18/03/02 20:05
Località: Roma

Sponsor
 

Re: [Excel] Macro per generare righe

Postdi Venerdi » 24/04/08 15:05

...chiedo scusa...
nella fretta sono riuscito a sbagliare l'esempio della riga 2

Questo è l’output atteso da riga1
27/02/2008----ggg---------hhh--------mmm----------27/02/2008
28/02/2008----ggg---------hhh--------mmm----------27/02/2008
29/02/2008----ggg---------hhh--------mmm----------27/02/2008

V.
Avatar utente
Venerdi
Utente Junior
 
Post: 43
Iscritto il: 18/03/02 20:05
Località: Roma

Re: [Excel] Macro per generare righe

Postdi Venerdi » 06/05/08 22:29

...up
...nessuno?

V.
Avatar utente
Venerdi
Utente Junior
 
Post: 43
Iscritto il: 18/03/02 20:05
Località: Roma

Re: [Excel] Macro per generare righe

Postdi Anthony47 » 06/05/08 23:26

E questo topic dove si era perso?

Dai alla cella che contiene l’ intestazione Data1 il nome “radice”; poi usa la seguente macro:
Codice: Seleziona tutto
Sub vener()
FOrig = "Foglio1"   '<<< Origine
FDest = "Foglio2"   '<<< Destinazione
DefZona = "A1:E1"   '<<< Colonne da copiare
'
Sheets(FOrig).Select
TotCol = Range(DefZona).Columns.Count
LastRow = Range("A65536").End(xlUp).Row
'
Rep:
I = I + 1
Range("Radice").Offset(I, 0).Select
If ActiveCell.Row > LastRow Then GoTo Fine
CJ = Int(ActiveCell.Value) - Int(ActiveCell.Offset(0, TotCol - 1).Value)
If CJ <= 0 Then GoTo Rep
For J = 1 To CJ
ActiveCell.Range(DefZona).Copy Destination:=(Sheets(FDest).Range("A65536").End(xlUp).Offset(1, 0))
Sheets(FDest).Range("A65536").End(xlUp).Value = Sheets(FDest).Range("A65536").End(xlUp).Offset(0, TotCol - 1).Value + J - 1
Next J
GoTo Rep
Fine:
End Sub

Dai un' occhiata alle istruzioni marcate <<< e modificale come serve a te

E’ ok cosi’?
Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13891
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Macro per generare righe":


Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti