2017-06-29 7 views
0

別のワークブックで変数を変更するためのヘルプが必要です。添字の範囲外:私はそれは私にエラーを与える9 Workbooks("test.xlsx").Worksheets("Sheet").Cells(1, 1).Value = VariableXでセルの値を変更しようとすると別のワークブックのVBA変更値

まず私はWorkbooks.Open ("test.xlsx")

でブックを開きます。なぜそれがうまくいかないのかわかりません。誰かがこれで私を助けることができますか?

+1

シート名は「シート」ですか? –

+0

これは一例ですが、シートの名前は正しいです。 – Stan

+0

他のブックではなく、同じブック「test.xlsx」を開きます。だからあなたは 'シート'ワークシートを持っていません。 –

答えて

3

Workbooks.openワークブックオブジェクトを返します。あなたが操作したいワークブックを参照するために、これを使用します。

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

これは、感謝しました! – Stan

2

あなたはOpenそれがActiveで、ワークブックを編たら。小さな実例があります。

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

追加ありがとう! – Stan

関連する問題