2017-06-29 2 views
0

Ich brauche Hilfe beim Ändern von Variablen in einer anderen Arbeitsmappe.VBA Wert in einer anderen Arbeitsmappe ändern

Zuerst öffne ich die Arbeitsmappe mit Workbooks.Open ("test.xlsx")

Wenn ich versuche, einen Zellwert zu ändern, mit Workbooks("test.xlsx").Worksheets("Sheet").Cells(1, 1).Value = VariableX es gibt mir Fehler 9: Index außerhalb des zulässigen Bereichs. Ich verstehe nicht, warum es nicht funktionieren wird. Kann mir jemand dabei helfen?

+1

Ihr Blattname ist "Blatt"? –

+0

Das ist ein Beispiel, aber der Name des Blattes ist richtig. – Stan

+0

Ihre Eröffnung die gleiche Arbeitsmappe 'test.xlsx' anstelle der anderen. Sie haben also kein Sheet Sheet. –

Antwort

3

Workbooks.open Gibt ein Arbeitsmappenobjekt zurück. Hier können Sie die Arbeitsmappe verweisen, die Sie bearbeiten möchten:

dim wb as Workbook 
set wb = Workbooks.Open("test.xlsx") 
wb.Worksheets("Sheet").Cells(1,1).Value = variableX 

' Close the workbook afterwards and save the changes 
wb.Close True 
+0

Das hat funktioniert, danke! – Stan

2

Sobald Sie Open die Arbeitsmappe ed ist es Active. Hier ist ein kleines Arbeitsbeispiel:

Sub Macro2() 
    Dim VariableX As Long 
    VariableX = 123 

    Workbooks.Open Filename:="C:\TestFolder\Book1.xlsx" 
    Worksheets("Sheet1").Cells(1, 1).Value = VariableX 

    ActiveWorkbook.Save 
    ActiveWorkbook.Close 
End Sub 
+0

Danke für die Zugabe! – Stan

Verwandte Themen