Condividi:        

[exel] Ciclo per cambiare colonna.

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: [exel] Ciclo per cambiare colonna.

Postdi ramset64 » 10/05/09 12:18

Anthony47 ha scritto:Prova a inserire qualcosa come
Codice: Seleziona tutto
    Range("A1").Formula = "='C:\Documents and Settings\UTENTE\Documenti\[Setting.xlsx]Foglio1!$J$A1"

Ciao.

Anthony ma cosi utilizo vba per andare a copiare quel dato sul foglio attivo... io vorrei evitare proprio questo, lo voglio ottenere direttamente nel codice vba ma non sul file attivo.
Ciao
ramset64
Utente Senior
 
Post: 396
Iscritto il: 29/10/08 10:41
Località: Torino

Sponsor
 

Re: [exel] Ciclo per cambiare colonna.

Postdi Anthony47 » 10/05/09 15:27

Puoi usare una cella libera come appoggio.

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [exel] Ciclo per cambiare colonna.

Postdi ramset64 » 10/05/09 16:09

E' esattamente quello che ho fatto dall'inizio, la domanda era se vi era una soluzione alternativa, ma non è importante, grazie ciao
ramset64
Utente Senior
 
Post: 396
Iscritto il: 29/10/08 10:41
Località: Torino

Re: [exel] Ciclo per cambiare colonna.

Postdi Anthony47 » 11/05/09 09:58

L' importazione da file chiusi e' possibile usando la ADO object library; non lo suggerisco poiche' 1) e' un argomento che non "padroneggio" e 2) hai gia' un metodo molto semplice per ottenere il risultato.

Chi vuole approfondire puo' fare una ricerca su google con la stringa "import data from a closed workbook using ado" oppure "import data from a closed workbook using dao".

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [exel] Ciclo per cambiare colonna.

Postdi Flash30005 » 12/05/09 12:24

Anthony47 ha scritto:Chi vuole approfondire puo' fare una ricerca su google con la stringa "import data from a closed workbook using ado" oppure "import data from a closed workbook using dao".

Beh non mi son lasciato scappare l'occasione e ho provato...
Codice: Seleziona tutto
Sub prova()
GetDataFromClosedWorkbook "C:\Pippo.xls", "A1:B21", ActiveCell, False
GetDataFromClosedWorkbook "C:\Pippo.xls", "MyDataRange", Range("B3"), True
End Sub
Sub GetDataFromClosedWorkbook(SourceFile As String, SourceRange As String, _
    TargetRange As Range, IncludeFieldNames As Boolean)

Dim dbConnection As ADODB.Connection, rs As ADODB.Recordset
Dim dbConnectionString As String
Dim TargetCell As Range, i As Integer
    dbConnectionString = "DRIVER={Microsoft Excel Driver (*.xls)};" & _
        "ReadOnly=1;DBQ=" & SourceFile
    Set dbConnection = New ADODB.Connection
    On Error GoTo InvalidInput
    dbConnection.Open dbConnectionString ' open the database connection
    Set rs = dbConnection.Execute("[" & SourceRange & "]")
    Set TargetCell = TargetRange.Cells(1, 1)
    If IncludeFieldNames Then
        For i = 0 To rs.Fields.Count - 1
            TargetCell.Offset(0, i).Formula = rs.Fields(i).Name
        Next i
        Set TargetCell = TargetCell.Offset(1, 0)
    End If
    TargetCell.CopyFromRecordset rs
    rs.Close
    dbConnection.Close ' close the database connection
    Set TargetCell = Nothing
    Set rs = Nothing
    Set dbConnection = Nothing
    On Error GoTo 0
    Exit Sub
InvalidInput:
    MsgBox "The source file or source range is invalid!", _
        vbExclamation, "Get data from closed workbook"
End Sub



Effettivamente si copiano i dati senza aprire il foglio ma...
le celle non corrispondo a quelle impostate (devo dire che ho fatto tutto con molta fretta, tanto era la curiosità) :)

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-

Precedente

Torna a Applicazioni Office Windows


Topic correlati a "[exel] Ciclo per cambiare colonna.":


Chi c’è in linea

Visitano il forum: Nessuno e 32 ospiti