Condividi:        

Excel 2003 - eliminare riga secondo contenuto

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 12/02/13 11:14

cosa intendi per stringa di comando?
Il codice da me postato inserisce una stringa "SUSCP:SNB=0" con il valore della cella A3 e chiude con un punto e virgola
ma è una stringa non un comando
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Sponsor
 

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 12/02/13 11:29

Si hai ragione, non avevo capito. Ma come faccio ad incollare questo comando in tutte le celle della colonna AU ( celle con righe non vuote)?
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 12/02/13 15:32

Non ho capito
se in tutta la colonna ci va la stessa stringa oppure in AU3 ci va la stringa con A3, in AU4 la stringa con A4 etc etc
e se deve ricoprire le righe non vuote oppure evitare di sovrascriverle

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 13/02/13 10:20

si in tutta la colonna ci va la stessa stringa , come dici tu con A3 in AU3, in AU4 con A4 etc...
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 13/02/13 14:40

Ok
allora prova questa macro
Codice: Seleziona tutto
Sub CompilaAU()
UR = Range("A" & Rows.Count).End(xlUp).Row
For RR = 1 To UR
If Range("A" & RR).Value = "" Then Range("AU" & RR).Value = "SUSCP:SNB=0" & Range("A" & RR).Value & ";"
Next RR
End Sub

Che
1) conta le righe esistenti nella colonna A
2) Scansiona ogni cella cella colonna AU
3) Se AUx è vuota inserisce la stringa nella quale c'è all'interno quanto esistente nella cella A corrispondente

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 13/02/13 15:43

Ciao, ha funzionato, l'unica cosa che ho modificato è invece di "A" della seconda stringa ho inserito "AU". Volevo chiederti, sai se c'è qualche discussione aperta in merito al copiare delle stringhe dal mio foglio excel (in base al valore delle celle di una colonna) e incollarle in uno sheet dello stesso file? grazie, gentilissimo.
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 13/02/13 17:31

Hai fatto bene a modificare perché ho fatto confusione in effetti da quanto avevo capito la riga doveva essere
Codice: Seleziona tutto
If Range("AU" & RR).Value = "" Then Range("AU" & RR).Value = "SUSCP:SNB=0" & Range("A" & RR).Value & ";"

Mentre solo ora ho capito che se in Ax non c'è nulla deve ricorpiare cosa c'è in AU con aggiunta della stringa.
Ok

In questo Forum troverai molti esempi ma ogni volta sono da adattare all'esigenza quindi avere un minimo di conoscenza di vba
Se spieghi cosa ti occorre potremmo risolvere insieme
Più sei preciso nello spiegare il quesito e più i dati corrispondono allo stato reale delle cose e prima risolviamo.

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 14/02/13 10:26

Allora, quello che vorrei fare io è:
vorrei copiare tutte le righe del mio foglio (anche la prima riga però dove ci sono scritti tutti i titoli di ogni colonna) che hanno un certo valore nella colonna C e incollare queste righe in un nuovo sheet dello stesso documento excel e dare un nome a questi due sheet.
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 14/02/13 12:47

E' opportuno inviare il file perché non mi è chiaro cosa vorresti ottenere

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 14/02/13 14:41

Praticamente devo copiare delle righe presenti nel mio file excel, che hanno nella colonna F il valore ADD, e devo incollarle in un nuovo foglio dello stesso file.
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 14/02/13 15:08

Ok allora copia questa macro e avvala
Codice: Seleziona tutto
Sub CopiaSe()
UR1 = Worksheets("Foglio1").Range("F" & Rows.Count).End(xlUp).Row
For RR1 = 2 To UR1
If UCase(Worksheets("Foglio1").Range("F" & RR1).Value) = "ADD" Then
UR2 = Worksheets("Foglio2").Range("F" & Rows.Count).End(xlUp).Row + 1
Worksheets("Foglio1").Rows(RR1).Copy Destination:=Worksheets("Foglio2").Rows(UR2)
End If
Next RR1
End Sub


Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 15/02/13 12:18

Ciao, ho provato ad isnerire il codice che mi hai detto:
1)ho effettuato una modifica, poichè utilizzo la linguia inglese allora invece di foglio ho messo sheet e ho cambiato la colonna F con la colonna C.
2)mi daun errore relativo a questa riga UR2 = Worksheets("Foglio2").Range("F" & Rows.Count).End(xlUp).Row + 1
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 15/02/13 12:22

Risolto il problema, praticamente ho creato il secondo sheet visto che non esisteva.
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 15/02/13 12:51

dopo aver incollato le righe nello sheet 2, dovrei eliminarle dallo sheet 1 . ho provatoa d isnerire questo codice ma non le elimina

UR = Worksheets("ATT").Range("C" & Rows.Count).End(xlUp).Row
For RR = UR To 1 Step -1 '<<<< questo ciclo inizia dall'ultima riga e scansiona tutte le righe fino alla prima
If UCase(Worksheets("ATT").Range("C" & RR).Value) = "ADD_DP_ULL" Then '<<<<< condizione che il valore della riga RR colonna L sia una delle stringhe scritte
Rows(RR & ":" & RR).Delete Shift:=xlUp '<<< in caso positivo cancella la riga altrimenti prosegue la scansione
End If
Next RR
End Sub
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi Flash30005 » 15/02/13 13:21

Due sono le cose o la stringa non è uguale a quella da te definita oppure hai un altro foglio attivo dove non ci sono celle con ADD...
e in caso contrario le sta cancellando sul secondo foglio
Codice: Seleziona tutto
UR = Worksheets("ATT").Range("C" & Rows.Count).End(xlUp).Row
 For RR = UR To 1 Step -1
 If UCase(Worksheets("ATT").Range("C" & RR).Value) = "ADD_DP_ULL" Then
 Worksheets("ATT").Rows(RR).Delete Shift:=xlUp '<<< inserisci il nome del foglio, così
 End If
 Next RR
End Sub


Però se devi cancellare le righe utilizzando la stessa condizione del copia (macro precedente) puoi inserire solo la riga di cancellazione, in questa maniera
Codice: Seleziona tutto
Sub CopiaSe()
UR1 = Worksheets("Foglio1").Range("F" & Rows.Count).End(xlUp).Row
For RR1 = 2 To UR1
If UCase(Worksheets("Foglio1").Range("F" & RR1).Value) = "ADD" Then
UR2 = Worksheets("Foglio2").Range("F" & Rows.Count).End(xlUp).Row + 1
Worksheets("Foglio1").Rows(RR1).Copy Destination:=Worksheets("Foglio2").Rows(UR2)
Worksheets("ATT").Rows(RR1).Delete   '<<<< aggiunta riga
End If
Next RR1
End Sub


Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 15/02/13 15:30

Ciao, ho utilizzato la prima parte di codice che mi hai dato e ha funzionato perfettamente.Grazie mille.
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Re: Excel 2003 - eliminare riga secondo contenuto

Postdi lupinlupin84 » 15/02/13 15:40

Ciao, volevo farti una domanda, all'inizio della macro, ho creato i due fogli "ATT" e "CC" del mio file, e poi ho aggiunto il codice delle peecedenti risposta;come mai la macro non mi da nessun problema nell'esecuzione del codice, anche se non dichiaro nei comandi a quale sheet mi riferisco?
lupinlupin84
Utente Junior
 
Post: 32
Iscritto il: 02/02/11 14:58

Precedente

Torna a Applicazioni Office Windows


Topic correlati a "Excel 2003 - eliminare riga secondo contenuto":


Chi c’è in linea

Visitano il forum: Nessuno e 69 ospiti