Titolo: Excel e righe Post di: ghisirds - Marzo 24, 2009, 19:10:39 Salve a tutti voi.
Avrei bisogno del vostro aiuto per realizzare un pezzo di codice che andrà a comporre una complicata macro. In pratica, io seleziono un numero di celle variabile in una sola colonna e devo riuscire ad eliminare tutte le righe corrispondenti alle celle selezionate tranne la prima riga e deve rimanere attiva la prima cella in alto delle selezione iniziale. Veloce esempio: Seleziono C3:C5 Eseguo la macro Rimane selezionata e attiva la cella C3 ma vengono eliminate le righe 4 e 5. La colonna sarà sempre la C ma il numero di celle selezionate e la loro posizione è variabile Qual è il codice VBA più semplice e pulito per realizzare questa operazione? Grazie __________________ Mai visto regali ragazza (http://www.idee-regalo.biz/regalo-ragazza.html) così? (regalos bodas (http://www.regalos-originales.biz/regalos-boda.html) in spagnolo), bambini dislessici (http://scuo.la/psicologia/1397-bambini-dislessici-e-come-affrontare-gli-studi-con-serenita.html), fulgieri swarovski (http://www.fulgierisrl.com/) Titolo: Re: Excel e righe Post di: ciocchetto - Marzo 24, 2009, 20:06:55 Se vuoi che vengano cancellate solo le celle (e non le righe) della selezione tranne quelle della prima righa, devi fare qualcosa del tipo questo:
Citazione Sub eliminaCelleMenoUna() inizio = Selection.Row colonna = Selection.Column altezza = Selection.Rows.Count With ActiveSheet .Range(.Cells(inizio+1,colonna), .Cells(inizio-1+altezza, colonna)).Select End With Selection.Delete Shift:=xlUp ActiveSheet.Cells(inizio, colonna).Select End Sub Questo fa quello che hai chiesto e sposta tutte le celle al di sotto di quelle cancellate immediatamente sotto la cella che rimane selezionata; se invece vuoi lasciare le celle vuote, devi togliere la parte che ti ho colorato di blu (Shift:=xlUp) dalla terz'ultima riga. Titolo: Re: Excel e righe Post di: ghisirds - Marzo 24, 2009, 23:07:22 Vado a provarla
grazie intanto ciao ps. ma sposta le celle o le righe? io avrei bisogno che rimanesse tutto allineato, quindi eliminare e spostare righe intere... Titolo: Re: Excel e righe Post di: ciocchetto - Marzo 25, 2009, 08:16:01 Vado a provarla grazie intanto ciao ps. ma sposta le celle o le righe? io avrei bisogno che rimanesse tutto allineato, quindi eliminare e spostare righe intere... Eh, ma tu avevi parlato di una singola colonna... :smt003 Se devi cancellare e spostare intere righe devi modificare il programma così: Citazione Sub eliminaCelleMenoUna() inizio = Selection.Row colonna = Selection.Column altezza = Selection.Rows.Count With ActiveSheet .Range(.Rows(inizio + 1), .Rows(inizio - 1 + altezza)).Select End With Selection.Delete Shift:=xlUp ActiveSheet.Cells(inizio, colonna).Select End Sub Non è necessario selezionare le righe intere, basta che selezioni le celle di una sola colonna Al solito, se vuoi solo cancellare le righe lasciandole vuote basta che togli il pezzo Shift:=xlUp
Powered by SMF 1.1.19 |
SMF © 2006-2009, Simple Machines
Traduzione Italiana a cura di SMItalia |