| | Post: 56 | Registrato il: 30/04/2010
| Città: LIVORNO | Età: 34 | Utente Junior | 2010 | | OFFLINE |
|
19/06/2021 22:57 | |
Buonasera, ho una macro che copia dei dati da foglio A a Foglio B partendo dall'ultima riga colonna E, il range è da colonna C a colonna AA, adesso avrei la necessità di copiare in più anche i dati di colonna CN saltando però quelli da colonna AB a colonna CM
... cut
For r = wsA.Cells(Rows.Count, 5).End(xlUp).Row To 3 Step -1
'******************************************************************
'OK se in colonna E non ci sono stringhe che contengono nei primi 5 caratteri "paolo "
'******************************************************************
If Left(wsTess.Cells(r, 5), 5) = "paolo" Then
x = wsB.Cells(Rows.Count, 5).End(xlUp).Row + 1
wsB.Range("C" & x & ":AA" & x).Value = wsA.Range("C" & r & ":AA" & r).Value ...... ' & ,range("CN" & x) ..... & range ("CN"& r )
... cut
Grazie excel 2007 |
|
| | Post: 56 | Registrato il: 30/04/2010
| Città: LIVORNO | Età: 34 | Utente Junior | 2010 | | OFFLINE |
|
20/06/2021 21:39 | |
Buonasera ho risolto, sbagliavo a mettere la parentesi. Grazie
wsB.Range("C" & x & ":AA" & x, "CN" & x).Value = wsA.Range("C" & r & ":AA" & r, "CN" & r).Value excel 2007 |
| | Post: 57 | Registrato il: 30/04/2010
| Città: LIVORNO | Età: 34 | Utente Junior | 2010 | | OFFLINE |
|
20/06/2021 22:31 | |
Scusate credevo di aver risolto, ma o mi copia tutto il range C:CU
wsB.Range("C" & x & ":AA" & x, "CN" & x).Value = wsA.Range("C" & r & ":AA" & r, "CN" & r).Value
oppure copia da colonna C a colonna CU ma in quest'ultima ripete i dati di colonna C,
wsB.Range("C" & x & ":AA" & x & ",CN" & x).Value = wsA.Range("C" & r & ":AA" & r & ",CN" & r).Value [Modificato da qvlenzi 20/06/2021 23:34] excel 2007 |
| | Post: 58 | Registrato il: 30/04/2010
| Città: LIVORNO | Età: 34 | Utente Junior | 2010 | | OFFLINE |
|
22/06/2021 21:05 | |
Dal pulsante TRASFERISCI dati da Tess a Ex Tess C;AA e AG e AQ e AW e BB e CN, attivo la macro archivioUT che dovrebbe trasferire i dati. Ho provato in tutti i modi, ma l'istruzione non fa quello che vorrei, potreste aiutarmi. Al momento attuale mi copia il contenuto della cella C & x nelle colonne AQ e AW e BB e CN, vorrei che trasferisse invece il contenuto delle stesse da foglio Tess a ExTess, come precedentemente spiegato. E' un problema di sintassi, oppure è l'approccio sbagliato? Grazie.
Sub archivioUT()
Dim r As Long, x As Long
Dim wsA As Worksheet, wsB As Worksheet
'Dim DaEliminare As Long, DaRecuperare As Long
Set wsA = Sheets("__Tesserati__")
Set wsB = Sheets("Ex_Tesserati")
If ControllaDatiDaElaborare(wsA, "paolo", "eliminare ") = False Then
Exit Sub
End If
wsA.Unprotect
wsB.Unprotect
Application.Calculation = xlManual
Application.EnableEvents = False
Application.ScreenUpdating = False
For r = wsA.Cells(Rows.Count, 5).End(xlUp).Row To 3 Step -1
'******************************************************************
'OK se in colonna E non ci sono stringhe che contengono nei primi 5 caratteri "paolo"
'******************************************************************
If Left(wsA.Cells(r, 5), 5) = "paolo" Then
x = wsB.Cells(Rows.Count, 5).End(xlUp).Row + 1
'wsB.Range("C" & x & ":AA" & x, ("CN" & x)).Value = wsA.Range("C" & r & ":AA" & r, ("CN" & r)).Value ' copia range C:AA & CN
wsB.Range("C" & x & ":AA" & x, ("CN" & x)).Value = wsA.Range("C" & r & ":AA" & r, ("CN" & r)).Value ' copia range C:AA & CN
wsA.Range("C" & r & ":CN" & r & "").ClearContents
End If
Next
Set wsA = Nothing
Set wsB = Nothing
End Sub
[Modificato da qvlenzi 23/06/2021 11:57] excel 2007 |
| | Post: 1.416 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
23/06/2021 11:52 | |
ciao a tutti,
ciao qvlenzi,
prova l'allegato, mi sembra faccia quello che ha chiesto, anche se non mi sembrava particolarmente difficoltoso
ciao
Frank
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 59 | Registrato il: 30/04/2010
| Città: LIVORNO | Età: 34 | Utente Junior | 2010 | | OFFLINE |
|
23/06/2021 18:14 | |
Grazie tanimon adattata la macro alle mi esigenze, funziona tutto.
wsB.Range("C" & x & ":AA" & x).Value = wsA.Range("C" & r & ":AA" & r).Value
'=========================================================
Set wsA_rng = wsA.Range("AG" & r)
Set wsB_rng = wsB.Range("AG" & x)
wsB_rng = wsA_rng
Set wsA_rng = wsA.Range("AQ" & r)
Set wsB_rng = wsB.Range("AQ" & x)
wsB_rng = wsA_rng
Set wsA_rng = wsA.Range("AW" & r)
Set wsB_rng = wsB.Range("AW" & x)
wsB_rng = wsA_rng
Set wsA_rng = wsA.Range("BB" & r)
Set wsB_rng = wsB.Range("BB" & x)
wsB_rng = wsA_rng
Set wsA_rng = wsA.Range("CN" & r)
Set wsB_rng = wsB.Range("CN" & x)
wsB_rng = wsA_rng
'==================================================================00excel 2007 |
|
|