0

値の代わりにセルを参照するための VBA 構文が必要です。

そんなこと知ってる

Workbook().Worksheet().Cell().Valueセルの値を返します。

セル参照を知りたい、こんな感じ='[Vba Source Test.xlsx]Source'!$B$8

私は使用してみました:

workbook().worksheet().cell().address 

ただし、一部のみを返します$B$8

このようなコードで使用します。

Workbook(Master).Worksheet(Summary).range(a1).value =  
workbook(Source).Worksheet(Data).cell(2,8).address

助けてくれる人にもう一度感謝します。

4

1 に答える 1

1

オブジェクト名と範囲アドレスを適切な区切り記号で連結する必要があります。

"='["Workbook(Source).Name & "]" & Worksheet(Data).Name & "'" & Cells(2,8).Address

あなたがしているのはString、セルのFormulaに値を割り当てているため、これでうまくいくはずです (ただし、テストしていないため、タイプミスがある可能性があります)。

Dim myFormula as String
myFormula = "='["Workbook(Source).Name & "]" & Worksheet(Data).Name & "'!" & Cells(2,8).Address

Workbook(Master).Worksheet(Summary).range(a1).Formula = myFormula

これからワークブックを省略できる場合がありNameます。開いているワークブックに属するワークシートを指定する限り、ワークブック名​​は自動的に付けられると確信しています。数式を挿入するときにファイルが開いていない場合は、ブック名を含める必要があります。

于 2013-07-05T03:48:55.520 に答える