Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Macro x copia incolla avanzato

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

Macro x copia incolla avanzato

Postdi deepsky88 » 09/12/08 13:03

Salve a tutti^^
Vi spiego come stanno el cose:
Devo compilare un file (chiamiamolo rapporto) con alcune voci ke devo prendere da una tabella contenente un grande quantita di dati (archivio),la soluzione migliore secondo me sarebbe far si che cliccando su una delle voci qualsiasi dell'archivio le parole selezionate vadano direttamente cliccandole alla prima riga vuota del rapporto, e cosi via.
é possibile creare una cosa del genere?grazie mille dell attenzione:)
deepsky88
Newbie
 
Post: 6
Iscritto il: 09/12/08 12:54

Sponsor
 

Re: Macro x copia incolla avanzato

Postdi deepsky88 » 09/12/08 15:52

Scusate sto parlando di excel 2007^^
non trovavo il pulsante modifica :lol:
deepsky88
Newbie
 
Post: 6
Iscritto il: 09/12/08 12:54

Re: Macro x copia incolla avanzato

Postdi deepsky88 » 09/12/08 15:55

Eventualmente mi direste cosa non va qui?
Sub Copia()
'
' Copia Macro
'
' Scelta rapida da tastiera: CTRL+m
'
Rows("13:13").Select
Selection.Copy
Windows("ciao.xlsx").Activate
UltimaRiga = Range("B" & Rows.Count).End(xlUp).Row 'questa riga di codice mi individua l'ultima riga piena
Cells(UltimaRiga + 1, 2).Select 'quindi seleziono la cella nella riga successiva ovvero la PRIMA RIGA VUOTA
ActiveSheet.Paste
Windows("la sfida.xlsx").Activate
End Sub

Ho usato qualke suggerimento del sito ma a:"ActiveSheet.Paste" mi da un errore dicendomi ke le dimensione di copia-incolla non coincidono...
grazie^^
deepsky88
Newbie
 
Post: 6
Iscritto il: 09/12/08 12:54

Re: Macro x copia incolla avanzato

Postdi Anthony47 » 09/12/08 20:03

Ciao deepsky e benvenuto nel forum.
La macro che hai postato copia una intera riga (13:13) e poi cerca di incollarne il contenuto partendo dalla colonna B [Cells(UltimaRiga + 1, 2)]; il messaggio ti dice che N colonne non possono stare in N-1.

Per quello che devi fare dovrebbe andare bene questa macro, che copia la parte selezionata e la incolla sul file target, usando la col B per rilevare l' ultima riga occupata (come nel tuo codice) e incollando sotto colonna B:
Codice: Seleziona tutto
Sub Copia()
Selection.Copy Destination:=Workbooks("Ciao.xlsx").Sheets("Foglio1").Range("B" & Rows.count).End(xlUp).Offset(1, 0)
End Sub

Se vuoi incollare in colonna A, modifica in ".Offset(1, -1).

Se vuoi realizzare una logica diversa posta ancora specificando in dettaglio cosa vorresti realizzare.

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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro x copia incolla avanzato

Postdi deepsky88 » 10/12/08 09:23

Grazie mille della risposta anthony^^
Nel frattempo ieri mi sn inegnato e sono riuscito a fare esattamente quello che volevo:


Range("B13").Select
Selection.Copy
Windows("ciao.xlsx").Activate
Riga = 1
While Cells(Riga, 1) <> ""
Riga = Riga + 1
Wend
Ri = Cells(Riga, 1).Row
ActiveSheet.Paste
Windows("la sfida.xlsm").Activate

Ora pero' devo far in modo che prima di copiare il dato nel rapporto la macro inserisca una riga e solo successivamente copi il dato nella riga inserita...pensavo fosse facile ma continua a darmi errore se la macro diventa:

Range("B13").Select
Selection.Copy
Windows("ciao.xlsx").Activate
Riga = 1
While Cells(Riga, 1) <> ""
Riga = Riga + 1
Wend
Ri = Cells(Riga, 1).Row
Selection.EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
ActiveSheet.Paste
Windows("la sfida.xlsm").Activate

Mi dice che manca funzione o variabile alla riga = 1...
Puoi aiutarmi?
Grazie ancora dell'attenzione ;)
deepsky88
Newbie
 
Post: 6
Iscritto il: 09/12/08 12:54

Re: Macro x copia incolla avanzato

Postdi Anthony47 » 10/12/08 11:46

La necessita' aguzza l' ingegno, bene..
Pero' non chiedermi di dedure che cosa vuoi fare dalle macro che pubblichi; ripeto l' osservazione che ti ho fatto ieri: "Se vuoi realizzare una logica diversa posta ancora specificando in dettaglio cosa vorresti realizzare."

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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro x copia incolla avanzato

Postdi Anthony47 » 10/12/08 15:44

..comunque se vuoi copiare B13 e incollarlo nel file Ciao.xlsx, in coda a col A, lasciando 1 riga vuota, usa questa:
Codice: Seleziona tutto
Sub Copia()
Range("B13").Copy Destination:=Workbooks("Ciao.xlsx").Sheets("Foglio1").Range("A" & Rows.count).End(xlUp).Offset(2, 0)
End Sub


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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro x copia incolla avanzato

Postdi deepsky88 » 10/12/08 16:51

Si è quasi perfetto ma la destinazione di incolla non deve essere la colonna A ma la cella selezionata precedentemente dal mouse^^
Grazie mille:)
deepsky88
Newbie
 
Post: 6
Iscritto il: 09/12/08 12:54

Re: Macro x copia incolla avanzato

Postdi Anthony47 » 10/12/08 21:51

Si è quasi perfetto ma..
Ti ringrazio per l' incoraggiamento

...ma la destinazione di incolla non deve essere la colonna A ma la cella selezionata precedentemente dal mouse
Questa non la capisco, ed e' alquanto diverso da quanto intravedo nei post precedenti e nel codice delle macro, compresa quella che faceva esattamente quello che volevi.

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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro x copia incolla avanzato

Postdi deepsky88 » 11/12/08 09:13

I post precedenti erano solo una prova in pratica prendendo la mia macro:

Range("B13").Select
Selection.Copy
Windows("ciao.xlsx").Activate
riga = 1
While Cells(riga, 1) <> ""
riga = riga + 1
Wend
Ri = Cells(riga, 1).Row
ActiveSheet.Paste
Windows("la sfida.xlsm").Activate

dovrei solo fare in modo di aggiungere una riga vuota prima di incollare,mantenendo queste impostazioni,si puo' fare?
p.s uso excel 2007
deepsky88
Newbie
 
Post: 6
Iscritto il: 09/12/08 12:54

Re: Macro x copia incolla avanzato

Postdi Anthony47 » 11/12/08 20:24

Siamo tornati a quanto scrivesti 6 post fa; ma ti avevo gia' risposto 4 post fa, vedi qui: viewtopic.php?f=26&t=77067&p=437684#p437617

Se non vuoi andare in loop, perche' non ti seguirei, deciditi a scrivere che cosa vuoi copiare, quando e dove; cioe' descrivi la logica che devi realizzare.
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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Macro x copia incolla avanzato":


Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti