| | Post: 5 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
14/10/2022 11:21 | |
ciao a tutti, avrei bisogno di un metodo che mi elimini tutte le righe che non contengono numeri nella colonna C, il risultato atteso è nel foglio 2 colorato di verde, premetto che il file originale contiene più di 2.000 righe quindi il lavoro fatto manualmente è enorme, grazie |
|
| | Post: 1.281 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
14/10/2022 12:49 | |
Se ti va bene mettere il risultato in un altro foglio:
1) seleziona le 4 colonne
2) applica un Filtro (menu Home - sezione Modifica e filtra - Filtro)
3) clicca sul filtro della colonna C (cella C1) e in fondo togli la spunta alle Vuote
4) Copia quanto rimane selezionato (riseleziona le colonne se perdi la selezione)
5) spostati in un'altro foglio ed Incolla
6) seleziona le 4 nuove colonne e ridimensiona [Modificato da rollis13 14/10/2022 12:50]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 5 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
14/10/2022 13:18 | |
innanzitutto grazie, così facendo non riporta la corrispondenza con i modelli, guarda il foglio 3 rosso:cod art. 53-54 e 55 fanno parte del modello 2 mentre sono stati messi nel modello 3 |
| | Post: 1.282 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
14/10/2022 14:47 | |
Come avrai già notato il 'casino' è dovuto al fatto che nella colonna C in corrispondenza ad alcuni Modelli manca la scritta 'Rif 40', pertanto, l'automatismo del Filtro considera la riga vuota.
Non vedo altra via che utilizzare le macro.
[Modificato da rollis13 14/10/2022 14:55]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 6 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
14/10/2022 14:53 | |
e come devo farla la macro? |
| | Post: 1.283 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
14/10/2022 15:36 | |
Dovrai valutare una alla volta tutte le celle della colonna C e se è vuota verificare che non corrisponda ad una riga con il Cod. Art. in colonna A. In questo caso la devi mantenere altrimenti procedi con l'eliminazione della riga, o se preferisci, nascondere la riga.
Ti ho preparato un esempio con il Nascondi attivo. Option Explicit
Sub Gestisci_Celle_Vuote()
Dim ur As Long
Dim x As Long
ur = Cells(Rows.Count, "A").End(xlUp).Row 'calcola l'ultima riga di colonna A
For x = ur To 1 Step -1
If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Hidden = True '<- per nascondere
'If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Delete '<- per eliminare
Next x
End Sub
[Modificato da rollis13 14/10/2022 15:37]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 7 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
14/10/2022 15:51 | |
intanto grazie davvero domani con calma la provo e ti faccio sapere |
| | Post: 8 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
15/10/2022 10:42 | |
macro perfetta!!!!!!
grazie davvero |
| | Post: 1.284 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
15/10/2022 11:38 | |
Grazie per il riscontro positivo , sono contento di essere stato di qualche aiuto.
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 9 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
20/10/2022 11:22 | |
ciao, avrei un altro caso da risolvere, dall'elenco della colonna A dovrei estrarre in maniera casuale e non ripetitiva e metterli nelle colonne C,D,E e F e decidere quanti nomi devo estrarre |
| | Post: 1.286 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
20/10/2022 11:34 | |
Ti segnalo che questo è tutt'altro problema rispetto al titolo di questa discussione.
In questi casi, per avere anche un minimo di visibilità nel Forum, si inizia una nuova discussione con un nuovo titolo appropriato.
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 10 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
20/10/2022 11:36 | |
scusa è vero |
| | Post: 25 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
28/06/2023 17:12 | |
rollis13, 14/10/2022 15:36:
Dovrai valutare una alla volta tutte le celle della colonna C e se è vuota verificare che non corrisponda ad una riga con il Cod. Art. in colonna A. In questo caso la devi mantenere altrimenti procedi con l'eliminazione della riga, o se preferisci, nascondere la riga.
Ti ho preparato un esempio con il Nascondi attivo. Option Explicit
Sub Gestisci_Celle_Vuote()
Dim ur As Long
Dim x As Long
ur = Cells(Rows.Count, "A").End(xlUp).Row 'calcola l'ultima riga di colonna A
For x = ur To 1 Step -1
If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Hidden = True '<- per nascondere
'If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Delete '<- per eliminare
Next x
End Sub
|
| | Post: 26 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
28/06/2023 17:14 | |
Piermario Granzotto, 28/06/2023 17:12:
ciao con questa macro le celle vengono nascoste, cosa dovrei fare per eliminarle? |
| | Post: 1.340 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
28/06/2023 17:29 | |
Avevo già riportato nella macro le due ipotesi (nascondere od eliminare). Tutto quello che dovevi fare era attivare la riga che ti interessava.
In pratica, metti l'apostrofo alla prima opzione e toglilo alla seconda.
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 27 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
28/06/2023 18:06 | |
rollis13, 14/10/2022 15:36:
Dovrai valutare una alla volta tutte le celle della colonna C e se è vuota verificare che non corrisponda ad una riga con il Cod. Art. in colonna A. In questo caso la devi mantenere altrimenti procedi con l'eliminazione della riga, o se preferisci, nascondere la riga.
Ti ho preparato un esempio con il Nascondi attivo. Option Explicit
Sub Gestisci_Celle_Vuote()
Dim ur As Long
Dim x As Long
ur = Cells(Rows.Count, "A").End(xlUp).Row 'calcola l'ultima riga di colonna A
For x = ur To 1 Step -1
If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Hidden = True '<- per nascondere
'If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Delete '<- per eliminare
Next x
End Sub
grazie invece di nasconderle è possibile eliminarle?
|
| | Post: 28 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
28/06/2023 18:11 | |
rollis13, 28/06/2023 17:29:
Avevo già riportato nella macro le due ipotesi (nascondere od eliminare). Tutto quello che dovevi fare era attivare la riga che ti interessava.
In pratica, metti l'apostrofo alla prima opzione e toglilo alla seconda.
grazie
|
| | Post: 29 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
29/06/2023 07:41 | |
Piermario Granzotto, 28/06/2023 18:11:
grazie
Sub Gestisci_Celle_Vuote()
Dim ur As Long
Dim x As Long
ur = Cells(Rows.Count, "A").End(xlUp).Row 'calcola l'ultima riga di colonna A
For x = ur To 1 Step -1
'If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Hidden = True '<- per nascondere
If IsEmpty(Range("C" & x)) Then If Range("A" & x) <> "COD. ART." Then Range("A" & x).EntireRow.Delete '<- per eliminare
Next x
End Sub
ciao ho fatto così ma mi si blocca excel, potresti darmi la macro corretta per favore?
|
| | Post: 1.341 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
29/06/2023 08:39 | |
Con il file esempio che hai allegato al post #10 le due versioni della macro funzionano come previsto, pertanto, in mancanza di altre informazioni precise sul tuo progetto attuale ti devi applicare e fare il debug.
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 30 | Registrato il: 07/01/2015
| Utente Junior | PROFESSIONAL PLUS 2010 | | OFFLINE | |
|
29/06/2023 08:48 | |
rollis13, 29/06/2023 08:39:
Con il file esempio che hai allegato al post #10 le due versioni della macro funzionano come previsto, pertanto, in mancanza di altre informazioni precise sul tuo progetto attuale ti devi applicare e fare il debug.
ma così come l'ho fatta io la macro sarebbe corretta per eliminare le righe o ho sbagliato qualcosa? |
| | Post: 675 | Registrato il: 02/04/2018
| Città: PESCARA | Età: 75 | Utente Senior | EXCEL 2016 - SPREAD32 | | OFFLINE |
|
29/06/2023 10:28 | |
ciao
in molte cose bisogna intendersi bene e non parlare lingue diverse
io ho creato nuovo foglio e nel foglio1 ho inserito un modulo nel quale ho scritto il codice del post 16
poi tenendo presente gli apici da attivare e disattivare per ottenere le 2 possibilità, ho inserito qualche valore e la macro mi funziona normalmente senza crash , e ho Excel 2007
Allego il mio foglio
Leo
LEO
https://t.me/LordBrum |
| | Post: 1.342 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
29/06/2023 11:24 | |
Sì, certo, tutto giusto. Ora nella macro il ciclo prevede l'eliminazione dell'intera riga qualora trovi una cella vuota in colonna C e che in colonna A non ci sia scritto COD. ART. .
Quando si hanno dei dubbi si fa una copia del file orginale e su questa copia si fanno tutte le prove del caso. Quando tutto funziona solo allora si applica al file originale. [Modificato da rollis13 29/06/2023 11:26]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
|
|