|
Domanda.
nome=MARCO
cognome=LUNARDI
versione=2002-XP
conosco3=buono
vba=SI
macro=SI
email=marco.lunardi@vodafone.it
chra=163
problema=Gentile ho visto il tuo sito e ti faccio i complimenti;io ho un
problema per la mia tesi e quindi ho pensato a te visto le tue capacità xkè
ho un database tipo questo in cui dovrei raggruppare queste righe in unica
con il valore relativo ad ogni anno; il database di partenza è questo:
emittente 2000 2001 20002
ENI AA
ENI
A+
ENI
B
Ecco vorrei una macro per potermi aiutare a fare il comando copia incolla
speciale salta celle vuote in modo da avere una unica riga
ENI AA A+ B
Ora il fatto è questo vorrei avere tipo un qualcosa che quando riconosce che
nell'elenco ho 3 ENI riunisce i relativi valore;
Spero tu mi possa aiutarmi non disturbandoti troppo così posso magari
inserirti nei ringraziamenti della mia tesi se ti fa
piacere! GRAZIE MARCO LUNARDI
Risposta.
Ciao Marco, ti invio un file con quanto richiesto. Credo che la routine
l'avresti dovuta fare te, visto che rientra nella tesi, e non io; comunque
non ti ho messo istruzioni, quindi dovrai almeno sforzarti di capirne il
funzionamento, se vuoi modificarti il codice. Ti dico solo che si tratta di
un doppio ciclo, che cerca nella colonna A del foglio1 la parola Pinco, e se
la trova cerca la prima cella che porta un valore nelle colonne fino alla 7,
copia il dato, e poi cerca sul foglio2 la prima cella libera sulla riga2, e
incolla, poi prosegue sul foglio1 a cercare nella colonna A.
Non voglio nessuna citazione, datti da fare,
saluti, ennius
questa la
routine:
Sub Componi()
Dim zonaA, zonaB
Dim CL As Object
Dim rif
Set zonaA = Sheets(1).Range("A1:A10")
For Each CL In zonaA
If CL = "Pinco" Then
riga = CL.Row
For colonna = 2 To 7
If Cells(riga, colonna) <> "" Then
rif = Cells(riga, colonna).Value
col = 1
While Sheets(2).Cells(2, col) <> ""
col = col + 1
Wend
Sheets(2).Cells(2, col) = rif
Exit For
End If
Next
End If
Next
End Sub
|