Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

copiare ed incollare su colonna libera

Ultimo Aggiornamento: 16/03/2018 17:52
Post: 12
Registrato il: 27/12/2017
Città: SIGNA
Età: 46
Utente Junior
2007
OFFLINE
15/03/2018 20:14

salve a tutti
ho provato ad registrare una macro e funziona ma purtroppo vorrei migliorarala e nn so come fare.
la macro è questa:

Sub Macro2()
'
' Macro2 Macro
'

'
Range("F10:F89").Select
Selection.Copy
ActiveWindow.SmallScroll Down:=-12
Range("L4").Select
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Sheets("magazzino").Select
Range("F11:F90").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("I18").Select
Application.CutCopyMode = False
ActiveWorkbook.Save
End Sub

praticamente copio i valori di una colonna su una cartella x e l'incollo su un altra cartella y , fino a qui ci siamo, io vorrei che quando copio su cartella y se la colonna è già ocuupato che mi incolli nella colonna successiva . es. prima volta copia su colonna f 2 volta su colonna g e via di seguito.
Post: 3.254
Registrato il: 28/06/2011
Città: AGORDO
Età: 70
Utente Master
2013
OFFLINE
15/03/2018 21:05

Dovrebbe essere giusta così
vb
Sub Macro2()
Dim Ur As Long, X As Long
Range("F10:F89").Copy
Range("L4").Select
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Sheets("magazzino").Select
For X = 8 To 1000 'inizia da G sino 1000
    Ur = Cells(1048576, X).End(xlUp).Row
    If Ur <= 11 Then 'incolla solo se la cella (riga11) è vuota
        Range(Cells(11, X), Cells(90, X)).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
        Exit For
    End If
Next X
Range("I18").Select
Application.CutCopyMode = False
ActiveWorkbook.Save
End Sub
Excel 2013
Post: 12
Registrato il: 27/12/2017
Città: SIGNA
Età: 46
Utente Junior
2007
OFFLINE
16/03/2018 00:05

Grazie
Domani provo e ti faccio sapere
Post: 13
Registrato il: 27/12/2017
Città: SIGNA
Età: 46
Utente Junior
2007
OFFLINE
16/03/2018 10:50

ciao
ho provato ma da questo come errore
Ur = Cells(1048576, X).End(xlUp).Row

Sub Macro55()
Dim Ur As Long, X As Long
Range("F10:F89").Copy
Range("L4").Select
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Sheets("magazzino").Select
For X = 8 To 1000 'inizia da G sino 1000
Ur = Cells(1048576, X).End(xlUp).Row
If Ur <= 11 Then 'incolla solo se la cella (riga11) è vuota
Range(Cells(11, X), Cells(90, X)).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Exit For
End If
Next X
Range("I18").Select
Application.CutCopyMode = False
ActiveWorkbook.Save
End Sub
Post: 1.839
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
16/03/2018 12:54

che excel hai?

per il 2003: Ur = Cells(65536, X).End(xlUp).Row

saluti



Domenico
Win 10 - Excel 2016
Post: 3.256
Registrato il: 28/06/2011
Città: AGORDO
Età: 70
Utente Master
2013
OFFLINE
16/03/2018 16:22

Se mi permetti, dovresti allegare un files
>>>Ho risposto solo a naso (non conoscendo le coordinate del files)
Io, uso 2007, ed non vedo errori
Excel 2013
Post: 14
Registrato il: 27/12/2017
Città: SIGNA
Età: 46
Utente Junior
2007
OFFLINE
16/03/2018 16:45

Scusami io personalmente ho un 2003 ma dove va questa formula è 2016
Post: 3.257
Registrato il: 28/06/2011
Città: AGORDO
Età: 70
Utente Master
2013
OFFLINE
16/03/2018 17:06

Non dovrei più risponderTi...(in firma hai 2007, deve funzionare)
Hai 2003, cavoli Tuoi nel fare domande.
Pure su ...Selection.Hyperlinks(1).
[Modificato da raffaele1953 16/03/2018 17:10]
Excel 2013
Post: 15
Registrato il: 27/12/2017
Città: SIGNA
Età: 46
Utente Junior
2007
OFFLINE
16/03/2018 17:24

Senti sono stato educato nel dirti scusa E tu mi rispondi così,penso che in un forum ci si naviga per imparare se sapevo che era così importante te lo avrei detto, sicuramente io sono molto scarso in materia ma tu se nn hai in minimo di pazienza nessuno ti obbliga a rispondere. Detto questo grazie lo stesso.
Post: 3.258
Registrato il: 28/06/2011
Città: AGORDO
Età: 70
Utente Master
2013
OFFLINE
16/03/2018 17:52

....Ur = Cells(1048576, X).End(xlUp).Row
Con Excel 2003>>>Ur = Cells(65536, X).End(xlUp).Row
[Modificato da raffaele1953 17/03/2018 13:00]
Excel 2013
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Copiare e incollare i codici ISBN (13 messaggi, agg.: 21/09/2021 19:24)
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 06:09. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com