2

Excel (.xlsm) ワークシートで実行する単純な VBA 関数を取得しようとしています。

この関数を作成しました:

Function abc()

abc = 2

End Function

Module2で、それはうまくいきました。

しかし、スプレッドシートを別のシステムにコピーした後、「#name」が見つからないかのように表示されるようになりました。ただし、関数は使用可能な関数のリストに表示されます。

これにより、何らかの設定を有効にする必要があると思われますが、求められたものはすべて有効にしました。何か案は?

4

2 に答える 2

2

私はそれがトラストセンターにあることを知っていたはずです:

http://office.microsoft.com/en-us/excel-help/change-macro-security-settings-in-excel-HP010096919.aspx

基本的には、「信頼」と「マクロを有効にする」が見つかるまでボールをぶつけていろいろ調べ、最も安全性の低いオプションを選択します。

次に、スプ​​レッドシートを閉じて再度開きます。

于 2012-06-12T18:03:44.083 に答える
0

もっと情報が必要かもしれないと思います。使用している Excel のバージョンは何ですか? 宛先システムのバージョンとは異なりますか?

他のシステムにコピーした Workbook に Module2 が含まれていることを確認してください。Excel 2007 では、既定で個人用ブックにマクロが保存される場合があるため、コードが実際に .xlsm ファイル内にあることを確認する必要があります。

それでも問題が解決せず、簡単な修正が必要な場合は、.xlsm ファイルを作成せずにコード テキストを新しいシステムの Excel ワークブックに直接コピーします (他のシステムで新しいモジュールを作成してから貼り付けます)。

アドインを組み立てる方法を学びたい場合は、ここまたはここから始めることができます。

于 2012-06-12T18:14:47.520 に答える