1

ウェブにはこのような質問がたくさんあることは知っていますが、私が見つけた答えを自分の状況に適用することはまだできていません。

VBAがあることはわかっていますが、プログラム/マクロをExcelファイル内に配置して、肥大化やセキュリティ警告などを発生させることは常に嫌いでした。一連のExcelファイルで機能するVBScriptの方針に沿って考えています。それらをマクロフリーのままにします。これで、このアプローチに従ってディレクトリ内のすべてのファイルに対して「最初の列を青く塗る」ことができましたが、より複雑な操作(グラフ、ピボットテーブルなど)を実行する必要があり、それははるかに困難です(不可能です)。 ?)VBAよりもVBScriptを使用します。

この特定の例では、処理後にすべてのファイルからすべてのマクロを削除する方法を知っていれば十分ですが、すべての提案を歓迎します。良い参考文献はありますか?Excelファイルの外部バッチ処理に最適な方法に関するアドバイスをいただければ幸いです。

ありがとう!

PS:私はMark Hammondの素晴らしいPyWin32パッケージを熱心に試しましたが、ドキュメントとインタプリタのフィードバックがなかったために落胆しました。

4

3 に答える 3

1

マクロを別の Excel ファイルに入れることができます。

于 2010-05-15T10:47:05.227 に答える
1

Excel を自動化するために VBA で実行できるほとんどすべてのことは、VBScript (または COM をサポートするその他のスクリプト/言語) で実行できます。

Excel.Application のインスタンスを作成したら、VBA を VBS にドロップして、そこから移動できます。

于 2010-05-15T14:16:39.133 に答える
0

使用しようとしているのがExcel/VBA機能の場合は、いつでも、Excelファイル内で作業したいExcelファイルと相互作用するすべてのコードを作成することから始めることができます。これは一種のマスターファイルです。 Karsten Wによって提案されているように、は通常のファイルから分離されています。

これにより、Excel/VBAを自由に作成できます。

次に、VBスクリプト、バッチファイル、タスクスケジューラなどから、マスターワークブック(たとえば、ブックを開いたときにコードを実行するように構成できます)を呼び出すことができます。

凝ったものにしたい場合は、マスターファイルでVBAを使用して、処理している任意のターゲットファイルでカスタムマクロ/VBAモジュールを作成/変更/削除することもできます。

私が説明しているほぼすべてのテクニックの情報は、Excel VBAの組み込みのリファレンスドキュメントから得たものですが、実際に取り組んでいる特定のプログラミングタスクに精通していると役立ちます。最善のアプローチは、タスク(たとえば、列を青色にする、データを更新/並べ替えるなど)を1つずつまとめて、最後に自動化について心配することです。

于 2010-05-16T04:40:06.320 に答える