できませんと言い切れないんですが、難しいです
VBA(この場合はエクセルVBA)はそのアプリに付いてる?ビジュアルベーシック
正式にはVisual Basic for Applications です
エクセル専用なので、ワードなんかですら乗せ変えても動作しない内容が多いのはお分かりでしょう
ただ、基本が一緒なので、エクセルやワードに依存しない内容であれば、載せ変えても動作する可能性が高いです
さて、もう一つ
実はWindowsにはVBS(VB Script)と言うものが乗っています
詳細はご自身で確認して頂くとしてVBSについて少し
名前から判るとおり、VBの仲間です
単体のファイル(拡張子は『.vbs』)で実行でき、内容はVBAのsubの内側を書いている感じです
もちろんsubを使って分ける事もできますし、ひとつのファイルをひとつのsubとしてほかのvbsファイルからcallする事もできます
エクセルから抜き出した『.bas』はかなりの部分VBSと互換性があるので、エクセル固有のもの以外の命令のみであれば、一番最初の行をコメントにして、拡張子を『.vsb』にするだけで、実行できます
つまり
そのままではできませんが、多少手を加えれば、できなくも無い
となります
例
'Attribute VB_Name = "Module2"
Option Explicit
'Sub nnn()
Dim FSO
Dim MyFile
Set FSO = CreateObject("Scripting.FileSystemObject")
For Each MyFile In FSO.GetFolder("C:\").Files
MsgBox MyFile.Name
Next
Set FSO = Nothing
'End Sub
これはエクセルVBAでつくった C:直下にあるファイル名を次々表示するものです
メモ帳に貼り付けて『.vbs』の拡張子をつけて保存し、ダブルクリックで起動します
エクセルに入れる場合はコメントをはずして拡張子を『.bas』に変更してエクセルからインポートします
お礼
ありがとうございます。 分かり易い回答で理解できました。