2

これは単純な問題のように思えるかもしれませんが、非常にイライラさせられました。非常にユーザーフレンドリーにしたいスプレッドシート用に、VBA でいくつかの (比較的単純な) マクロを作成しました。

つまり、すべてのマクロをボタンで実行したいのです。ただし、ボタンをマクロに割り当てようとすると、次のエラーが発生します。

数式が複雑すぎてオブジェクトに割り当てられません

これは、空のサブルーチンに割り当てようとしても発生します。それは機能しましたが、私が書いた最初のマクロに対してのみでした。モジュールに他のサブルーチンを追加すると、新しいボタンをマクロに割り当てることができなくなりました。

これは私が書いたコードです:

Sub Button1_Click()

selName = Range("C2").Value
div = Range("E2").Value
cost = Range("F2").Value
diff = div - cost

If diff < 0 Then
    diff = 0
End If
Range("G2").Select
ActiveCell.FormulaR1C1 = diff

x = Range("A2").Value + 1
Worksheets("VIP_TEMPLATE.PIVOT").Select
Range("J" & x).Select
ActiveCell.FormulaR1C1 = diff

Worksheets("CALCULATE").Select
Range("F2").Select
ActiveCell.ClearContents

End Sub

モジュールに別のサブルーチンがありますが、これが問題の原因になっているのではないでしょうか? これは、データをコピーして新しいワークシートに貼り付けるだけで、ルーチンにボタンを割り当てることができたからだと思います。私は(私が思うに)問題のある文字を使用していないので、ファイルパスとは何の関係もないと思います。

4

1 に答える 1