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

Spostare le cinquine dal gruppo

Ultimo Aggiornamento: 08/01/2021 17:32
Post: 130
Registrato il: 27/05/2019
Città: MILANO
Età: 56
Utente Junior
2016
OFFLINE
08/01/2021 15:38


Ciao a tutti e Buon Anno, mi servirebbe il vostro aiuto per spostare le cinquine dove nella stessa riga è presente il numero 3 oppure il 4; le cinquine andrebbero messe tutte una sotto l'altra senza spazi vuoti dalla colonna DY o DZ o EA come preferite. Sarebbe perfetto con un pulsante che fa tutto in automatico visto il grande numero di cinquine da controllare. Ho allegato il file.

Ad esempio nella riga 17 controllando i numeri a partire dalla colonna H sino alla colonna DW ci sono due 3, la cinquina della riga 17 va spostata o duplicata a destra dopo la colonna DX.

Oppure se vien meglio anzicché spostarle, lasciare solo le cinquine che a destra hanno il 3 o il 4 ed eliminare tutte le altre, senza lasciare righe vuote se possibile.

Grazie mille.
Post: 2.355
Registrato il: 21/03/2008
Città: LOCATE VARESINO
Età: 76
Utente Veteran
2007 / 13
OFFLINE
08/01/2021 16:58

ciao

da inserire nel modulo del foglio


Option Explicit
Sub eliminaRiga()
Dim i As Long
Dim Cella As Variant
Dim conta As Long
conta = 0
Application.ScreenUpdating = False
For i = Cells(Rows.Count, 2).End(xlUp).Row To 4 Step -1
For Each Cella In Range(Cells(i, "H"), Cells(i, "DW"))
If Cella.Value = 3 Or Cella.Value = 4 Then conta = conta + 1
Next Cella
If conta = 0 Then Rows(i).Delete
conta = 0
Next i
Application.ScreenUpdating = True
End Sub



riallego il tuo file con inserita questa

Ciao da locate
excel 2007 / 13
Post: 130
Registrato il: 27/05/2019
Città: MILANO
Età: 56
Utente Junior
2016
OFFLINE
08/01/2021 17:31

Di nuovo grazie!
Post: 1.058
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Veteran
Excel 2016-32bit Win11
OFFLINE
08/01/2021 17:32

Un saluto a tutti.
Arrivo con ore di ritardo, ormai ho partorito e pubblico la mia versione della macro lo stesso. Ho scelto di eliminare il superfluo visto che è la soluzione più semplice.:
Option Explicit
Sub test()
    Dim rig    As Long
    Dim col    As Long
    Dim ur     As Long
    Dim trova  As Boolean
    Application.ScreenUpdating = False
    ur = Cells(Rows.Count, 2).End(xlUp).Row
    For rig = ur To 4 Step -1
        trova = False
        For col = 8 To 127
            If Cells(rig, col).Value = "3" Or Cells(rig, col).Value = "4" Then
                trova = True
                Exit For
            End If
        Next col
        If trova = False Then Cells(rig, 1).EntireRow.Delete
    Next rig
    Application.ScreenUpdating = True
    MsgBox "Fatto!"
End Sub
[Modificato da rollis13 08/01/2021 17:33]

______________________________________________________________
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
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Verifica valore doppio per stessa cella (8 messaggi, agg.: 12/11/2021 14:12)
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 14:21. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com