Nascondi / scopri r...
 
Notifiche
Cancella tutti

La consultazione del forum è libera per tutti.

Per poter porre un quesito è invece necessario essere un utente registrato (clicca qui se non lo sei).

Tutti gli utenti che richiedono un supporto, come da REGOLAMENTO, sono caldamente invitati ad allegare un file di esempio con l'indicazione di quello che si desidera ottenere.

Nascondi / scopri righe in tabelle.

20 Post
3 Utenti
0 Reactions
233 Visualizzazioni
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

Ciao a tutti,

gestisco un'Associazione. Ci sono soci e iscritti alle attività. Negli anni ho "autocostruito" un file excel per "gestire" elenchi vari per la gestione. Il mio file excel è composto da circa 40 fogli. In ognuno è presente una tabella per gestire le varie attività. Negli anni ho cercato di costruire tabelle "standard" di circa 400/500 righe, a volte queste tabelle sono tutte utilizzate a volte solo un centinaio di righe. Dovendo eseguire la stampa provvedo "manualmente" a selezionare le righe "vuote" e a nasconderle da formato/riga/nascondi. E' possibile creare una macro che nasconda/scopra le righe vuote? Deve essere una macro per ogni foglio o una unica che funziona su tutti i fogli? 

Grazie.

Versione di Excel
Sistema operativo
 
Postato : 01/10/2024 19:18
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

è assurdo creare delle tabelle standard con righe vuote

non servono a niente e snaturano la proprietà stessa della tabella.

se scrivo sotto l'ultima riga della tabella questa in automatico la fagocita

facendola sua.

perciò invece di impazzire con le macro

elimina le righe vuote e vedrai che ti troverai meglio.

NB

le formule della prima riga vengono riportate sulle righe aggiunte adeguandole

 

non mi piacciono le tabelle ma se devo lavorarci sfrutto le loro proprietà

altrimenti che me ne faccio 😆 

 

per la macro aspettiamo i vbaisti

 
Postato : 01/10/2024 19:53
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 

Ciao,

 

Grazie.

il file me lo sono autocostruito con le conoscenze di excel e il vostro aiuto negli anni. Ho pensato alle tabelle perchè era il modo che ho imparato, ma se hai/avete altri consigli, grazie in anticipo. Uso le tabelle perchè le "stampo" in pdf e poi le invio o appunto .... le stampo con la stampante. Non saprei in che altro modo fare questo ma, ripeto, accetto ben volentieri, i tuoi consigli. Ho appena provato con quella tabella li, prima di inviarvela: la tabella si "allunga" ma l'altezza delle righe non viene riportata: viene utilizzata, per le righe aggiunte, l'altezza standard di excel. Per semplicità ho un'altezza di 25: se aggiungo 50 righe, devo successivamente modificare l'altezza da 16 a 25.

Grazie.

 
Postato : 01/10/2024 20:17
Marius44
(@marius44)
Post: 0
Moderatore
 

Ciao

Mio consiglio personale: non usare le Tabelle, usa un intervallo.

Prova la macro seguente (in un Foglio nuovo nel quale avrai riportato i dati - MA SOLO I VALORI - di una tua tabella)

Option Explicit

Sub Stampa()
Dim ur As Long, nascoste
'ultima riga da visualizzare
ur = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
'nascondi dalla riga successiva fino alla fine
nascoste = "A" & ur + 1 & ":J555"
ActiveSheet.Range(nascoste).EntireRow.Hidden = True
Stop
'codice per la stampa

'scopri le righe nascoste
ActiveSheet.Range(nascoste).EntireRow.Hidden = False
Stop
End Sub

Ho inserito due Stop per farti notare che prima nasconde le righe, esegue la stampa (inserisci il tuo codice), e infine scopre le righe precedentemente nascoste.

Ovviamente la macro è basata sui valori della colonna A che non devono contenere dati da una certa riga in giù. 

Fai sapere. Ciao,

Mario

Questo post è stato modificato 5 mesi fa da Marius44
 
Postato : 02/10/2024 05:34
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

@marius44 

Ciao, grazie mille.

Ora provo la macro: non sono cosi esperto di macro e mi ci vuole tempo.

Nel frattempo chiedo una informazione. Non sono esperto di excel, lo uso da anni ma esclusivamente per questo scopo associativo e quindi le mie esigenze e le mie necessità si fermano qui, ma sono disponibilissimo ad accettare consigli e imparare di più di excel. Nello specifico, ho iniziato ad usare le tabelle perchè? Devo stampare elenchi e utilizzo la "lettura facilitata", inizialmente con una regola di formattazione condizionale, poi con la formattazione tabelle, poi le tabelle hanno i filtri, le formule che si copiano automaticamente, i totali sotto, ecc., il nome tabella a cui fare riferimento nei vari fogli di excel per leggere e utilizzare dati di altre tabelle. Ecco perchè ho iniziato ad usarle. Se però avete suggerimenti, meglio, ho letto di intervalli ma non l'ho mai usato. Ho acquistato anche manuali su questo forum ma ho poco tempo per dedicarmi completamente, portate pazienza. Imparo a seconda dell'esigenza.

Grazie mille.

 
Postato : 02/10/2024 10:00
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

Ciao,

premetto che di Visual Basic non sono esperto, anzi.....

Quindi la risposta è che la macro non va, ma è un mio errore. Riporto le mie azioni cosi puoi capire dove sbaglio:

- strumenti / macro / Visual Basic Editor

- nella schermata principale copia le tue istruzioni

- tolgo i due "stop" perche creano errore

- clicco su "esegui sub" nella barra degli strumenti

- non succede nulla

- ho provato a cambiare la colonna A in B che le celle della colonna A non erano vuote, ma senza risultati.

 

Dove sbaglio?

 

 
Postato : 02/10/2024 13:57
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

- strumenti / macro / Visual Basic Editor

inserisci

modulo

copia la macro

 
Postato : 02/10/2024 14:21
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 

non va ancora. perchè?

ho cancellato i due stop perche li evidenza in giallo.

e poi invio. ma non va.

mi spiace.

 
Postato : 02/10/2024 17:17
Marius44
(@marius44)
Post: 0
Moderatore
 

Ciao

Potresti allegare il file che hai utilizzato con la macro inserita? Grazie.

Aggiungi qualcosa al Non va! Cosa fa? Si blocca? Non esegue quanto dovrebbe?

Ciao,

Mario

 
Postato : 02/10/2024 17:37
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

ma hai messo lo spezzone di codice per la stampa

dove ti ha segnalato Marius?

perchè io capisco che devi inserirlo

ActiveSheet.Range(nascoste).EntireRow.Hidden = True
Stop
'codice per la stampa
 
Postato : 02/10/2024 17:41
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

Eccolo.

Ho provato più volte. dove sbaglio?

Grazie.

 

 
Postato : 02/10/2024 20:32
Marius44
(@marius44)
Post: 0
Moderatore
 

Ciao

L'errore sta nel fatto che hai usato una tabella mentre t'avevo detto di copiare SOLO i valori.

Se formatto in quel modo la variabile ur (ultima riga) va a prendere la riga 555

 

Ciao,

Mario

 
Postato : 03/10/2024 05:36
Marius44
(@marius44)
Post: 0
Moderatore
 

Ciao

Visto che vuoi usare per forza le Tabelle, atteso che le tue Tabelle siano sempre nell'intervallo A2:J555 prova con questa macro che dovrebbe fare quanto chiedi.

Sub Stampa2()
Dim PrimaCella As Range, UltimaCella As Range, Tabella As Range, Esci As Boolean
Esci = False
With Sheets("Elenco")
  Set PrimaCella = .Range("A2")
  Set UltimaCella = Cells(.Rows.Count, PrimaCella.Column).End(xlUp).Offset(0, 9)
  Set Tabella = Range(PrimaCella, UltimaCella)
End With
For i = 1 To Tabella.Rows.Count
  Set Record = Tabella.Rows(i)
  For j = 1 To Record.Cells.Count
    Set cella = Record.Cells(j)
    'cella.Select
    If cella.Value = "" Then
      nascoste = cella.Address & ":J555"
      ActiveSheet.Range(nascoste).EntireRow.Hidden = True
      Stop
      
      'codice per la stampa
      
      ActiveSheet.Range(nascoste).EntireRow.Hidden = False
      Esci = True
      Exit For
    End If
  Next j
  If Esci Then
    Exit For
  End If
Next i
Set PrimaCella = Nothing
Set UltimaCella = Nothing
Set Tabella = Nothing
Set Record = Nothing
End Sub

Coem al solito ho messo uno Stop per farti notare in quale punto nasconde le righe.

Fai sapere. Ciao,

Mario

 
Postato : 03/10/2024 15:53
Forum 1
(@alessandro07)
Post: 0
New Member
Avviatore di Topic
 

@marius44 

grazie.

hai ragione, era il motivo per cui ti chiedevo dove sbaglio..... e dire che avevo letto le tue istruzioni. Porta pazienza.

Ora ho rifatto: nuovo file, nuovo salvataggio e nuova macro. ma non va ancora. Cancello i due stop perchè esce l'evidenziazione gialla e poi non appare nulla e la stampante non parte.

Grazie.

 

 
Postato : 03/10/2024 17:46
Marius44
(@marius44)
Post: 0
Moderatore
 

Ciao

Hai provato la nuova macro che "dovrebbe" funzionare con le Tabelle? Fai sapere.

Ciao,

Mario

 
Postato : 03/10/2024 17:48
Pagina 1 / 2
Condividi:
My Agile Privacy
Questo sito utilizza cookie tecnici e di profilazione. Cliccando su accetta si autorizzano tutti i cookie di profilazione. Cliccando su rifiuta o la X si rifiutano tutti i cookie di profilazione. Cliccando su personalizza è possibile selezionare quali cookie di profilazione attivare.
Attenzione: alcune funzionalità di questa pagina potrebbero essere bloccate a seguito delle tue scelte privacy
     Scarica il nostro ebook gratuito     

Unisciti a oltre 35.000 professionisti
che hanno già scelto di semplificare il proprio lavoro
e aumentare la produttività con la nostra newsletter!

Scarica l’ebook con i
migliori trucchi e suggerimenti per Excel
selezionati per te da Excel Academy

Download