| | Post: 1 | Registrato il: 28/04/2021
| Età: 52 | Utente Junior | Excell 2012 | | OFFLINE | |
|
28/04/2021 19:33 | |
Ciao
Ho una serie di codici
Esempio
111-222
111-222
111-222
111-223
111-223
111-223
111-344
111-344
Dovrei creare una riga vuota quando inizia un codice diverso
Grazie attendo |
|
| | Post: 1.126 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
28/04/2021 23:07 | |
presumendo che i tuoi dati iniziano dalla cella A1 puoi usare questa mia macro: Option Explicit
Sub Inserisci_Riga()
Dim ur As Long
Dim i As Long
Application.ScreenUpdating = False
ur = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 'rileva l'ultima riga di colonna A
For i = ur To 2 Step -1 'cicla dal basso verso l'alto la colonna A
If Cells(i, 1).Value <> Cells(i - 1, 1).Value Then 'se dati diversi ...
Cells(i, 1).EntireRow.Insert '... inserisci riga vuota
End If
Next i
Application.ScreenUpdating = True
End Sub
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 1 | Registrato il: 28/04/2021
| Età: 52 | Utente Junior | Excell 2012 | | OFFLINE | |
|
30/04/2021 18:40 | |
Grazie del consiglio nel fine settimana provo la Macro
Ma posso avere anche le righe numerate di quanti spazi intercorrono tra la riga superiore creata e quella di sotto??
Grazie
|
| | Post: 1.128 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
30/04/2021 19:43 | |
Cioè, un contatore che ti dica quante righe sono state inserite ?
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 2 | Registrato il: 28/04/2021
| Età: 52 | Utente Junior | Excell 2012 | | OFFLINE | |
|
01/05/2021 09:29 | |
Un contatore che mi dica quanti sono i codici uguali tra le righe che abbiamo inserito precedentemente |
| | Post: 1.394 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
01/05/2021 10:43 | |
ciao a tutti ed un saluto a Rolando ciao Tarim, allega un file con indicato a mano qual'è il tuo obiettivo. QUESTA la discussione di BySal esplicativa. 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: 1.130 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
01/05/2021 13:21 | |
Un saluto a tutti.
@Tarim Mirat, forse intendevi qualcosa così: Option Explicit
Sub Inserisci_Riga_Con_Conta()
Dim ur As Long
Dim i As Long
Dim conta As Long
Application.ScreenUpdating = False
ur = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 'rileva l'ultima riga di colonna A
For i = ur To 2 Step -1 'cicla dal basso verso l'alto la colonna A
conta = conta + 1
If Cells(i, 1).Value <> Cells(i - 1, 1).Value Then 'se dati diversi ...
Cells(i, 1).EntireRow.Insert '... inserisci riga vuota
Cells(i + conta + 1, 1) = conta
conta = 0
End If
Next i
Cells(i + conta + 1, 1) = conta + 1
Application.ScreenUpdating = True
End Sub [Modificato da rollis13 01/05/2021 13:24]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
|
01/05/2021 13:44 | |
@rollis13
Mancherebbe la cella A1
Edit: Scusami, provandola ho visto che li mettevi "dopo" la serie di stringhe
Sub NumeraRighe()
Dim x, ur, str
ur = Range("A" & Rows.Count).End(xlUp).Row
For x = ur To 1 Step -1
If x = 1 Then
str = Cells(x, 1): Cells(x, 1).EntireRow.Insert
Cells(x, 1) = Application.WorksheetFunction.CountIf(Range("a:a"), str): Exit Sub
Else
If Cells(x, 1) <> Cells(x - 1, 1) Then
str = Cells(x, 1): Cells(x, 1).EntireRow.Insert
Cells(x, 1) = Application.WorksheetFunction.CountIf(Range("a:a"), str)
End If
End If
Next
End Sub [Modificato da ABCDEF@Excel 01/05/2021 13:56] |
| | Post: 1.131 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
01/05/2021 13:58 | |
Se parto da sotto, perché mai dovrai confrontare la cella A1 con quella precedente .
Naturalmente il metodo l'ho sviluppato sul primo che mi è venuto in mente e tamponando invece di rifare interamente l'analisi del problema . [Modificato da rollis13 01/05/2021 14:01]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 3 | Registrato il: 28/04/2021
| Età: 52 | Utente Junior | Excell 2012 | | OFFLINE | |
|
03/05/2021 18:38 | |
Ciao Rollis,
Grazie il primo consiglio e andato a buon fine
Il secondo non lo ho ancora provato
Esempio
Riga vuota
111-222. 3
111-222. 3
111-222. 3
Riga vuota
111-223. 2
111-223. 2
Riga vuota
E così via questo voglio dirti quando ti chiedo di contare
Cioè 3 poiché il codice è ripetuto 3 volte
Cioè 2 poiché il codice è ripetuto 2 volte
Grazie sempre [Modificato da Tarim Mirat 03/05/2021 18:39] |
| | Post: 1.132 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
03/05/2021 19:01 | |
Beh, prima di suggerire una modalità per la conta potevi provare quello che avevo proposto nel post #7, magari era accettabile.
Comunque, intendi proprio come hai indicato nel post qui sopra, ovvero, numero punto spazio contatore (sempre uguale). Intanto vedo di studiare una soluzione per questa modalità.
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 4 | Registrato il: 28/04/2021
| Età: 52 | Utente Junior | Excell 2012 | | OFFLINE | |
|
03/05/2021 19:05 | |
Non ti preoccupare
Provo a vedere il consiglio precedente
E perché mi avevi chiesto di essere più chiara
Grazie |
| | Post: 1.133 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
03/05/2021 19:11 | |
Veramente avevi già risposto con il post #5 ma non ti preoccupare, quando si lavora 'a naso' ogni dettaglio in più fa sempre bene, è che per scrivere codice vba bisogna sempre prima fare analisi prima di proporre soluzioni (come ho già scritto nel post #9 😉).
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 5 | Registrato il: 28/04/2021
| Età: 52 | Utente Junior | Excell 2012 | | OFFLINE | |
|
03/05/2021 20:08 | |
Rollis 13
grazie grazie e perfetto.
Un ultima domanda
Ho
Articolo. Prezzo. Prezzo aumentato
111-222 100. 100
111-223. 200 210
111-224. 204,55. 204,55
111-225. 198,37. 205,00
Mi puoi evidenziare solo i codici con prezzo aumentato???
Grazie |
| | Post: 1.134 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
03/05/2021 22:36 | |
Sarà perché ho la pancia piena e l'abbiocco impera 😩 ma con tutto l'impegno non ho capito questa nuova richiesta visto quanto esposto fino ad ora.
Come aveva già chiesto @tanimon nel suo post #6 ora diventa proprio necessario allegare un file esempio con qualche riga di dati reali di partenza e di lato (o in un altro foglio) il risultato compilato e colorato manualmente comprensivo della prima richiesta (righe vuote inserite) e questa seconda e diversa richiesta. [Modificato da rollis13 03/05/2021 22:37]
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
| | Post: 1.135 | Registrato il: 16/08/2015
| Città: CORDENONS | Età: 67 | Utente Veteran | Excel 2016-32bit Win11 | | OFFLINE |
|
04/05/2021 23:43 | |
In attesa di informazioni più precise riguardanti la richiesta del post #14 riporto un'altra mia soluzione per la numerazione nelle celle. Option Explicit
Sub Inserisci_Riga_Con_Numero()
Dim ur As Long
Dim i As Long
Dim conta As Long
Dim num As Long
Application.ScreenUpdating = False
ur = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
For i = ur To 2 Step -1
conta = conta + 1
If Cells(i, 1).Value <> Cells(i - 1, 1).Value Then
Cells(i, 1).EntireRow.Insert
For num = 1 To conta
Cells(i + num, 1) = Cells(i + num, 1) & ". " & conta
Next num
conta = 0
End If
Next i
If conta = 0 Then
Cells(1, 1) = Cells(1, 1) & ". 1"
Else
For num = 1 To conta + 1
Cells(num, 1) = Cells(num, 1) & ". " & conta + 1
Next num
End If
Application.ScreenUpdating = True
End Sub
______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto) |
|
|