次のコードを使用して、指定された.AddPicure行に "Object Required"という424エラーが表示されます。私はなぜ写真がオブジェクトとしてディメンション化され、.addpicture comandが私に完全に参照されるように見えるのかは分かりません。VBA .AddPicture late binding error 424
コードの長さについてお詫び申し上げます、私はすべての変数を残すことをお勧めします。
MS Visio 16からExcel 13を使用しています。レイトバインディングが必要です。
は**編集:申し訳ありませんが、それはInfactは、追加のテキストボックスのラインは私に問題を与えてthatsのですが、私は以下のコードを更新しました...
Sub testexcel()
Dim pic As Object
Dim rng As Object
Dim tWidth As Long, tHeight As Long
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
Set xlWb = xlApp.workbooks.Open("C:\Users\tom\Desktop\Book1.xlsx")
Set xlWs = xlWb.sheets("Sheet1")
xlApp.ScreenUpdating = False
Set rng = xlWs.Range("B18")
Set rng2 = xlWs.Range("A1", rng.Offset(-1, -1))
picture1 = "C:\Users\tom\Desktop\PX001.bmp"
pHeight = 145
pWidth = 200
tHeight = 10
tWidth = 200
posX = 10
posY = 10
'On Error GoTo ErrMsg
With xlWs.Range("A1", rng.Offset(-1, -1))
'*******Problem on next line*******
Set txtBx = xlWs.Shapes.AddTextbox(msoTextOrientationHorizontal,
txtPosX, txtPosY, tWidth, tHeight).TextFrame.Characters.Text = "FooBar"
End With
'Some other code here...
End Sub
奇妙なことに、テキストフレームをwith句から移動すると、以下のようにうまく動作します。 txtBx.TextFrame.Characters.Text = "FooBar" – User632716
「With」スコープの外に移動したのではなく、分割したからです。詳細は私の答えを見てください。 'With'スコープからコードを削除しましたか?コード内ではまったく使用しないからです。 – arcadeprecinct