Condividi:        

[vba excel 2003]: copiare celle tra due file diversi

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

[vba excel 2003]: copiare celle tra due file diversi

Postdi karug64 » 21/02/13 23:03

Salve a tutti.
Ho due file "test1.xls" e "test2.xls"
Tramite codice vba dovrei eseguire un ciclo che controlli :

se il valore della cella della riga 8 , colonna 1...250 è un numero (del file test2.xls)
allora copio il valore della cella a partire dalla cella F2...F251 del foglio4 (del file test1.xls)

Il tutto tramite un bottone presente sul foglio1 del file test1.xls

Potreste aiutarmi ? Grazie.
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Sponsor
 

Re: [vba excel 2003]: copiare celle tra due file diversi

Postdi Flash30005 » 22/02/13 00:09

Suppongo che se alla riga8 colonna A (quindi A8) è un numero allora copi in F2
se B8 è numero copi in F3
se C8 è un numero copi in F4
ma se D8 non è un numero la cella F5 deve rimanere vuota o occupata dal prossimo numero trovato?

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: [vba excel 2003]: copiare celle tra due file diversi

Postdi karug64 » 22/02/13 08:22

Flash30005 ha scritto:ma se D8 non è un numero la cella F5 deve rimanere vuota o occupata dal prossimo numero trovato?

ciao


Ciao. Si la cella F5 deve essere occupata dal prossimo numero trovato.

Ieri, tra i vari tentativi sono riuscito ad ottenere il risultato voluto con queste righe di codice:

Codice: Seleziona tutto
Dim wk1_esame As Workbook
Dim wk2_prosp As Workbook
Dim sh1_esame As Worksheet
Dim sh2_prosp As Worksheet
 
 
    Set wk1_esame = ActiveWorkbook
    Set wk2 = Workbooks.Open("C:\test1.xls")
   
    Set sh2_prosp = Worksheets(1)
    Set sh1_esame = ThisWorkbook.Worksheets(8)
   
    riga = sh1_esame.Range("G65000").End(xlUp).Row
   
    For x = 1 To 250
           If sh2_prosp.Cells(8, 1 + x).Value > 1 And sh2_prosp.Cells(8, 1 + x).Value < 9999999 Then
            riga = riga + 1
            sh1_esame.Range("G" & riga) = sh2_prosp.Cells(8, 1 + x).Value
            sh1_esame.Range("H" & riga) = sh2_prosp.Cells(9, 1 + x).Value
        End If
    Next x


Immagino che ci sia un codice più pulito e funzionale, quindi, attendo fiducioso.

Ciao e grazie.
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22


Torna a Applicazioni Office Windows


Topic correlati a "[vba excel 2003]: copiare celle tra due file diversi":


Chi c’è in linea

Visitano il forum: Nessuno e 68 ospiti