|
|
||||||
|
#1
|
|
|
|
|
Volevo chiedervi un'informazione:io mi sono costruito una tabella, che
presenta una parte predefinita e fissa superiore, mentre la parte inferiore è variabile, nel senso che ho creato una macro assegnata ad un tasto che inserisce automaticamente una nuova riga alla pressione del tasto. Ora vorrei che alla fine delle mie operazioni sulla tabella si ritornasse ad avere una sola riga nella parte inferiore, magari automaticamente con un'altra macro. Facciamo un'esempio: le nuove righe si creano da A10 in giù, ce ne potranno essere 10, 100, non lo so, però poi alla fine vorrei che si ritornasse alla riga A10.Magari posso anche inserire un generico valore nella cella iniziale della riga se serve come intestazione, per esempio dire cancella tutte le righe da A10 in giù con celle nella colonna A non vuote. Grazie |
|
|
|
#2
|
|
|
|
|
"Nico" ha scritto:
> Volevo chiedervi un'informazione:io mi sono costruito una tabella, che > presenta una parte predefinita e fissa superiore, mentre la parte inferiore è > variabile, nel senso che ho creato una macro assegnata ad un tasto che > inserisce automaticamente una nuova riga alla pressione del tasto. Ora vorrei > che alla fine delle mie operazioni sulla tabella si ritornasse ad avere una > sola riga nella parte inferiore, magari automaticamente con un'altra macro. > Facciamo un'esempio: le nuove righe si creano da A10 in giù, ce ne potranno > essere 10, 100, non lo so, però poi alla fine vorrei che si ritornasse alla > riga A10.Magari posso anche inserire un generico valore nella cella iniziale > della riga se serve come intestazione, per esempio dire cancella tutte le > righe da A10 in giù con celle nella colonna A non vuote. > Grazie Ciao Nico. Ammesso che abbia capito, prova questa artigianale su unn foglio di prova; la routine, magari collegata ad un pulsante, cancella tutte i valori immessi dalla riga 10 alla riga NNN: Public Sub prova() Dim UR As Long Dim RI As Long With ActiveSheet RI = 10 UR = Cells.Find("*", , , , xlByRows, xlPrevious).Row Range(RI & ":" & UR).Delete Range("A10").Select End With End Sub Eliano |
|
#3
|
|
|
|
|
Ma dove devo scrivere quelle righe di programmazione che mi hai segnalato? in
Visual Basic? se dovesse essere così io non sono poi così tanto pratico con VB. "eliano" ha scritto: [..] |
|
#4
|
|
|
|
|
"Nico" ha scritto:
> Ma dove devo scrivere quelle righe di programmazione che mi hai segnalato? in > Visual Basic? se dovesse essere così io non sono poi così tanto pratico con > VB. Ciao Nico. Strana domanda, visto che in precedenza avevi scritto: [CUT] > > > ..., nel senso che ho creato una macro assegnata ad un tasto che > > > inserisce automaticamente una nuova riga alla pressione del tasto. [CUT] La macro ce l'hai, copiala in un modulo standard, ad esempio Modulo1, disegna sul foglio un pulsante e collegaci la macro. Eliano |
|
#5
|
|
|
|
|
Si, infatti, dicevo che non sapevo come fare perchè quando creo le macro le
registro, cioè faccio le operazioni in Excel, non vado mai a scriverle perchè non saprei come farlo in VB. Quindi per quelle righe che mi hai segnalato apro il VB da Excel e le incollo in un nuovo file di testo? "eliano" ha scritto: [..] |
|
#6
|
|
|
|
|
Ho inserito quelle righe in un nuovo modulo, l'ho trovato, però mi da un
errore sulla riga UR = Cells.Find("*", , , , xlByRows, xlPrevious).Row Errore di Runtime 91: variabile di oggetto o variabile del blocco with on impostata "eliano" ha scritto: [..] |
|
#7
|
|
|
|
|
"Nico" ha scritto:
> Ho inserito quelle righe in un nuovo modulo, l'ho trovato, però mi da un > errore sulla riga > UR = Cells.Find("*", , , , xlByRows, xlPrevious).Row > Errore di Runtime 91: variabile di oggetto o variabile del blocco with on > impostata > Ciao Nico. Non so che dirti, a me funziona (XL2003); il foglio di prova è disponibile. Eliano |
|
#8
|
|
|
|
|
"eliano" ha scritto:
>> "Nico" ha scritto: > > > Ho inserito quelle righe in un nuovo modulo, l'ho trovato, però mi da un > > errore sulla riga > > UR = Cells.Find("*", , , , xlByRows, xlPrevious).Row > > Errore di Runtime 91: variabile di oggetto o variabile del blocco with on > > impostata > > > > Ciao Nico. > Non so che dirti, a me funziona (XL2003); il foglio di prova è disponibile. > Eliano Ovviamente per "disegna un pulsante" intendevo un pulsante da Moduli. |
|
#9
|
|
|
|
|
"eliano" ha scritto:
>> "eliano" ha scritto: >> Ovviamente per "disegna un pulsante" intendevo un pulsante da Moduli. Scusa Nico ma ho qualche problema con i server. Ovviamente per "disegna un pulsante" intendevo un pulsante da Moduli. Comunque se la tua versione di XL ha qualche problema con il Find, prova questa versione: Public Sub prova() Dim UR As Long Dim RI As Long With ActiveSheet RI = 10 UR = Cells(Rows.Count, "A").End(xlUp).Row Range(RI & ":" & UR).Delete Range("A10").Select End With End Sub Saluti Eliano |
|
#10
|
|
|
|
|
Come non detto; il copia/incolla è impazzito anche lui.
Public Sub prova() Dim UR As Long Dim RI As Long With ActiveSheet RI = 10 UR = Cells(Rows.Count, "A").End(xlUp).Row If UR < RI Then Exit Sub Range(RI & ":" & UR).Delete Range("A10").Select End With End Sub Sono talmente incacchiato che avevo saltato una riga e, sinceramente, non so come ho fatto. Eliano |
|
#11
|
|
|
|
|
quest'ultima versione che mi hai mandato non mi funziona, mentre la
precedente si, forse c'è un problema su quel controllo IF che hai inserito. E comunque con la versione funzionante e precedente sembra che cancelli le righe da A1 ad A10. io invece vorrei che quelle fino ad A10 rimangano intatte, mentre tutte quelle successive ad A10 vengano cancellate. |
|
#12
|
|
|
|
|
"Nico" ha scritto:
> quest'ultima versione che mi hai mandato non mi funziona, mentre la > precedente si, forse c'è un problema su quel controllo IF che hai inserito. > E comunque con la versione funzionante e precedente sembra che cancelli le > righe da A1 ad A10. io invece vorrei che quelle fino ad A10 rimangano > intatte, mentre tutte quelle successive ad A10 vengano cancellate. Ciao Nico. L'unica che dovrebbe funzionare indipendentemente dalla versione di XL che utilizzi o della mancanza esplicita di alcuni parametri del Find è l'ultima. Inoltre, dire che una macro non funziona non significa assolutamente niente se non si specifica il perchè non funziona o il tipo di errore che si genera. Comunque se la routine proposta non ti funziona, mentre a me funziona correttamente, sarei dell'opinione di considerare l'argomento chiuso. Saluti Eliano |
|
|
| Discussioni simili | |
| Cancellazione automatica SMS Ciao a tutti volevo una info da qualcuno che se ne intende un po di cellulari Io ho la necessità di acquistare un cellulare che abbia una funzione tale che quando si... |
|
| cancellazione automatica appuntamenti? Ho notato che sul mio imate jam, si sono (apparentemente in modo automatico) cancellati gli appuntamenti degli ultimi 4 mesi i quali rimangono fortunatamente sul PC... |
|
| cancellazione righe db Ciao! in un'applicazione vb 6.0 che si appoggia a un db access con dao si verifica ogni tanto una sparizione di alcune righe dalle tabelle. escludendo il fatto che qualcuno... |
|
| Cancellazione automatica temporizzata Scusate il problema forse banale. Avrei necessità di cancellare il contenuto di alcune directory in base alla data. ogni giorno dovrei cancellare i file più vecchi di una... |
|
|
Tutti gli orari sono GMT. Attualmente sono le 08:20. | Privacy Policy
|