1

ExcelのセルにVBAを使用して数式を追加しようとしています.(簡略化された)コードは次のとおりです.

    Dim destRow as integer
    destRow = 107
    Cells(destRow, 19) = "=IF(L" & destRow & "="""";"""";""UNB"")"

`次のことも試しました (最後の行の代わりに):

    Cells(destRow, 19) = "=IF(L" & destRow & "=" & chr(34) & chr(34) & ";" & chr(34) & chr(34) & ";" & chr(34) & "UNB" & chr(34) & ")"

イミディエイト ウィンドウでは、どちらも正しい出力を生成します。

    =IF(L107="";"";"UNB")

...しかし、コードを実行すると、最後の行にエラー 1004 "アプリケーション定義またはオブジェクト定義のエラー" が表示されます。

どんな助けでも大歓迎です!

4

2 に答える 2

1

セミコロン「;」を置き換える必要があります。コンマ「、」のIF式。数式が解釈されるとき、Excel の構成に応じてセミコロンとして表示されます。

于 2014-01-28T14:47:06.573 に答える
0

おそらく関連するワークシートを参照するだけでよいと思います。

モジュールではなくシートのコードにある場合、コードは機能します。

そう

Sheet1.Cells(destRow, 19) = "=IF(L" & destRow & "=" & chr(34) & chr(34) & ";" & chr(34) & chr(34) & ";" & chr(34) & "UNB" & chr(34) & ")"

Sheet1でない場合は、明らかに目的のシートに置き換えます

于 2013-11-02T09:22:54.853 に答える