È soltanto un Pokémon con le armi o è un qualcosa di più? Vieni a parlarne su Award & Oscar!
 
Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Righe vuote

Ultimo Aggiornamento: 04/05/2021 23:43
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 [SM=g27811]

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 [SM=g27833].
Naturalmente il metodo l'ho sviluppato sul primo che mi è venuto in mente e tamponando invece di rifare interamente l'analisi del problema [SM=g27829].
[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)
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 05:36. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com