Forum di Excel e VBA, per condividere esperienze e risolvere problemi su: Excel, Word, Access, Power Point, Microsoft Office, macro, Visual Basic e Visual Studio.
macro come andare a capo di Zannacesena (utente non iscritto) data: 08/02/2013 11:39:02
Ho registrato la seguente macro:
Sub Macro3()
'
' Macro3 Macro
'
'
Range("B24:C24").Select
Selection.Copy
Sheets("Foglio3").Select
Range("A2").Select
ActiveSheet.Paste
Sheets("Foglio1").Select
End Sub
che mi permette di copiare i dati dal foglio1 area B24:C24 nel foglio3 area A2, ma come posso digli che al prossima eseguzione i dati di B24:C24 me li deve salvare nella riga sotto A3 e cosi via per ogni volta che viene eseguita la macro?
grazie
Enrico
di HarryBosch data: 08/02/2013 13:12:52
Ciao Zanna
hai fatto bene ad utilizzare il registratore che ti fornisce un primo valido aiuto a creare le proprie macro.
Talune cose non sono infatti registrabili: nel tuo caso devi determinare ogni volta l'ultima riga occupata e qua ci sono diversi metodi.
Ti propongo una soluzione abbastanza semplice:
- con l'instuzione ur= determini quante celle sono occupate della colonna a
- con la seconda Copy Destination:= in un colpo solo decidi cosa copiare e dove. Per il dove, aggiungo un +2 perché dal tuo esempio la prima riga va copiata dalla riga 2
Sub Macro3()
Dim ur As Integer
ur = Sheets("Foglio3").[counta(a:a)]
Range("B24:C24").Copy Destination:=Sheets("Foglio3").Cells(ur + 2, 1)
End Sub
di Zannacesena (utente non iscritto) data: 08/02/2013 16:38:01