Condividi:        

[Excel] Macro per convertire valori in Tabella

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

[Excel] Macro per convertire valori in Tabella

Postdi marte1503 » 02/01/12 22:21

Ciao a tutti
Vi chiedo ancora una mano per realizzare una macro per me troppo complessa..
In Foglio21 la Colonna47 di Tabella1, può contenere 4 valori ripetuti più volte senza un ordine logico.
I 4 valori sono: Grandi – Mezzani – Piccoli – Superpiccoli.
La macro che mi servirebbe, dovrebbe individuare tutte le celle di Colonna47 che contengano il valore “Grandi” e eliminare l’intera riga (cosa che è possibile fare con la macro preparatami da Anthony47 riadattandola (Topic : Cancellazione selettiva riga Tabella del 21/12/11)

Codice: Seleziona tutto
MyComp = Sheets("Foglio9").Range("N46").Value
'
Sheets("21").Select
With ActiveSheet.ListObjects("Tabella1")
For I = 1 To 10000
MyLine = Application.Match(MyComp, .ListColumns("Codice Fiscale").Range, 0)
If IsError(MyLine) Then Exit For
.ListRows(MyLine - 1).Delete
Next I
End With

In seguito dovrebbe col seguente ordine:
individuare tutti I valori “Mezzani” e trasformarli in “Grandi”
individuare tutti I valori “Piccoli” e trasformarli in “Mezzani”
individuare tutti I valori “Superpiccoli” e trasformarli in “Piccoli”
Grazie per l’impegno!

marte
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como

Sponsor
 

Re: [Excel] Macro per convertire valori in Tabella

Postdi Flash30005 » 02/01/12 23:16

Non ho Excel 2007 pertanto non posso usare quel codice

Ma questa macro scansiona la colonna 47 ("AU")
e in prima battuta cancella le righe con stringa "Grandi"
poi sostituisce come richiesto

Codice: Seleziona tutto
Sub Sostituisci()
Dim VettS(4) As String
VettS(1) = "Grandi"
VettS(2) = "Mezzani"
VettS(3) = "Piccoli"
VettS(4) = "Superpiccoli"
UR = Cells(Rows.Count, 47).End(xlUp).Row
For RR = UR To 1 Step -1
    If Cells(RR, 47).Value = VettS(1) Then Rows(RR & ":" & RR).Delete
Next RR
UR = Cells(Rows.Count, 47).End(xlUp).Row
For VV = 2 To 4
    For RR = 1 To UR
        If Cells(RR, 47).Value = VettS(VV) Then Cells(RR, 47).Value = VettS(VV - 1)
    Next RR
Next VV

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] Macro per convertire valori in Tabella

Postdi marte1503 » 03/01/12 00:10

Grazie 1000 Flash
la tua macro funziona benissimo!! :D :D

A presto
Grazie
marte
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Macro per convertire valori in Tabella":


Chi c’è in linea

Visitano il forum: Nessuno e 61 ospiti