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

Macro seleziona righe nascoste.

Ultimo Aggiornamento: 10/11/2019 14:23
Post: 165
Registrato il: 03/10/2015
Città: ALBAREDO PER SAN MARCO
Età: 43
Utente Junior
2003
OFFLINE
24/08/2019 17:56

Buon giorno allego file contenente due macro all'interno.Mi servirebbe una macro che mi seleziona solo le righe nascoste perché
devo riportarle poi in un altro foglio. Grazie buon Sabato
Post: 2.348
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
25/08/2019 11:02

ciao
questo copia le righe nascoste nel foglio2

saluti

Dim wk As Worksheet
Set wk = Worksheets("foglio2")
ur = Range("A" & Rows.Count).End(xlUp).Row
For j = 1 To ur
If Cells(j, 1).EntireRow.Hidden = True Then
ur1 = wk.Range("A" & Rows.Count).End(xlUp).Row + 1
Cells(j, 1).EntireRow.Copy
wk.Range("A" & ur1).PasteSpecial xlPasteValues
end if
next




[Modificato da dodo47 25/08/2019 11:03]
Domenico
Win 10 - Excel 2016
Post: 3.444
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
25/08/2019 11:11

Buona giornata, Matteo;
proverei a:
- aggiungere il Foglio di lavoro "Foglio2"
- modificare il tuo Codice VBA in questo modo:

Option Explicit

Sub Nascondi()
Application.ScreenUpdating = False
Dim NRc As Long, x As Long, y As Long
Dim Vlr As Byte
Dim Rng As Range
 
    NRc = Range("A" & Rows.Count).End(xlUp).Row
    Set Rng = Range(Cells(1, 3), Cells(NRc, 7))
        Range(Cells(1, 1), Cells(NRc, 1)).EntireRow.Hidden = True
    Vlr = InputBox("Digitare il numero da valutare compresa tra 1 e 90")
        For x = 1 To NRc
            If Not Application.WorksheetFunction.CountIf(Range("A" & x & ":C" & x), Vlr) = 0 Then
                Cells(x, 1).EntireRow.Hidden = False
            Else
                y = y + 1
                Range(Cells(x, 1), Cells(x, 5)).Copy
                Sheets("Foglio2").Cells(y, 1).PasteSpecial Paste:=xlPasteValues
            End If
        Next x
            Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

Potrebbe funzionare.

Fai sapere se hai problemi.



A disposizione.

Buon fine settimana.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 165
Registrato il: 03/10/2015
Città: ALBAREDO PER SAN MARCO
Età: 43
Utente Junior
2003
OFFLINE
25/08/2019 13:28

Ciao Giuseppe ciao Domenico intanto vi ringrazio e rispondo a tutti e 2.Ho provato tutte i due codici vanno tutti e due perfettamente ma il problema è un'altro. Nel foglio2 devono essere riportate le righe nascoste cioè quelle che già sto vedendo nel foglio1.Allego file con 4 moduli e dati non sensibili. In pratica la macro deve fare il contrario dei vostri 2 codice. Grazie matteo
Post: 3.445
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
25/08/2019 17:03

Buon pomeriggio, Matteo;
perdonami, ma non mi è ben chiaro quello che desideri ottenere.

Se vuoi solo copiarli, nel Codice VBA che ho proposto, prova ad eliminare solo il comando "Else".



Buon fine settimana.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 2.349
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
25/08/2019 19:08

Re:
Ciao
se in due ti abbiamo fornito la stessa soluzione, forse dovresti pensare che quello che hai scritto non è comprensibile.


gattodimarmo1980, 25/08/2019 13.28:

.... Nel foglio2 devono essere riportate le righe nascoste cioè quelle che già sto vedendo nel foglio1.



se sono nascoste come fai a vederle?




Domenico
Win 10 - Excel 2016
Post: 166
Registrato il: 03/10/2015
Città: ALBAREDO PER SAN MARCO
Età: 43
Utente Junior
2003
OFFLINE
26/08/2019 18:59

Ciao Domenico Ciao Giuseppe ho sbagliato totalmente il Titolo della discussione. Io una volta che nascondo le righe sul foglio1 quando le porto manualmente nel foglio2 ho tutte le righe del foglo1 e invece vorrei portare solo quelle visualizzate dopo aver lanciato la macro nascondi. Hai ragione Domenico quello che ho scritto non è comprensibile farò più attenzione la prossima volta. [SM=x423047]
Post: 2.350
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
26/08/2019 19:14

per quanto attiene al mio suggerimento del post #2,
sostituisci "True" con "False"

If Cells(j, 1).EntireRow.Hidden = False Then

saluti



Domenico
Win 10 - Excel 2016
Post: 167
Registrato il: 03/10/2015
Città: ALBAREDO PER SAN MARCO
Età: 43
Utente Junior
2003
OFFLINE
26/08/2019 20:04

Domenico suggerimento perfetto grazie. Riscontro perfetto .Ringrazio
anche Giuseppe MN ho modificato il comando else e tengo il tuo codice
per un altro lavoro. [SM=x423017] Complimenti a tutte e 2.Ciao Matteo
Post: 173
Registrato il: 03/10/2015
Città: ALBAREDO PER SAN MARCO
Età: 43
Utente Junior
2003
OFFLINE
10/11/2019 11:08

Errore di compilazione Variabile non definita.
Buona Domenica nel foglio1 ho tre macro la macro Visualizza
e la macro Nascondi funzionano perfettamente.La Macro Riporta non funziona dovrei riportare con questa nel foglio2 solo le righe che visualizzo dopo averle nascoste.Grazie anticipatamente Matteo. Allego
un foglio nuovo è cambiato il range e non riesco a modificarlo.
Post: 3.529
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
10/11/2019 12:02

Buona giornata, Matteo;
credo potresti provare con questo Codice VBA modificato:
Sub riporta()
Application.ScreenUpdating = False
Dim Ur As Long, K As Long, ur1 As Long
Dim wk As Worksheet
    Set wk = Worksheets("foglio2")
    Ur = Range("A" & Rows.Count).End(xlUp).Row
        For K = 1 To Ur
            If Cells(K, 1).EntireRow.Hidden = False Then
                ur1 = wk.Range("A" & Rows.Count).End(xlUp).Row + 1
                    Cells(K, 1).EntireRow.Copy
                    wk.Range("A" & ur1).PasteSpecial xlPasteValues
                End If
            Next K
                Application.CutCopyMode = False
Application.ScreenUpdating = True
    Set wk = Nothing
End Sub

Fai sapere se hai ancora problemi.



A disposizione.

Buon fine settimana.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 174
Registrato il: 03/10/2015
Città: ALBAREDO PER SAN MARCO
Età: 43
Utente Junior
2003
OFFLINE
10/11/2019 12:30

Perfetta Giuseppe ti ringrazio. Complimenti Matteo .Buona domenica.
Post: 4.263
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
10/11/2019 14:23

Re: Errore di compilazione Variabile non definita.
gattodimarmo1980, 10/11/2019 11.08:

Buona Domenica nel foglio1 ho tre macro la macro Visualizza
e la macro Nascondi funzionano perfettamente.La Macro Riporta non funziona dovrei riportare con questa nel foglio2 solo le righe che visualizzo dopo averle nascoste.Grazie anticipatamente Matteo. Allego
un foglio nuovo è cambiato il range e non riesco a modificarlo.



Matteo mi sembra inverosimile che tu, con oltre 170 messaggi sul forum e gli innumerevoli aiuti ricevuti, non sappia interpretare il messaggio di errore che hai riportato in oggetto.

Ma un minimo di VBA non vuoi proprio studiarlo?

Aspetti che siano sempre altri che ti tolgano le castagne dal fuoco?


Alfredo
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]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 07:20. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com