• ベストアンサー

VBAで作成したマクロをデスクトップで起動

pulsaの回答

  • ベストアンサー
  • pulsa
  • ベストアンサー率57% (34/59)
回答No.1

できませんと言い切れないんですが、難しいです 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』に変更してエクセルからインポートします

free_mees
質問者

お礼

ありがとうございます。 分かり易い回答で理解できました。

関連するQ&A

  • VBA ファイル作成時にマクロを含まない

    只今、excelのVBAを学習中です。早速ですが質問させていただきます。 excelファイルを作成し、入力されたファイル名で保存するプログラムを組んでいます。 その際、作成したファイルがマクロを含んでしまうのですがマクロをふくまないようにする事は可能でしょうか? VBAを始めたばかりなので初歩的な質問で大変恐縮です。よろしくお願い致します。

  • VBAで作成したComboboxにVBAでマクロを割り当てたい。

    下記コードでcomboboxをつくったのですが 作成されたCombobox1のComboBox1_Changeエベントに 標準モジュール内のSub cal をVBAで割り当てたいのですが可能でしょうか。 コンボボックス作成マクロ x=0 y=0 With Worksheets("Sheet1").OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, DisplayAsIcon:=False) .Left = X .Top = Y .Width = 53.25 .HEIGHT = 18 .ListFillRange = "AAA" End With これで作成したコンボボックスに標準モジュール内マクロをVBAで割りあてしたい。 標準モジュール sub cal ・ ・ end sub

  • マクロを効率よく作成するには

    会計事務所で、エクセルのマクロの作成をよく行います。 ですが、新しいマクロを作成する時に、すべてタイピングしてコードを書いているのが、もっと効率良くするほうほうがある様な気がしています。 ネットで検索すると、クラスモジュールの利用が良いらしいのですが、少し使ってみても、今一つ理解ができません。 標準モジュールで子プロシージャを使っても同じ事だと感じてしまいます。 そこで、クラスモジュールで効率が上がるポイントと、クラスモジュールでなくても、何かマクロ作成の効率を上げる方法を、ご教授頂ければと思います。 宜しくお願い致します。

  • マクロで複数のモジュールを反映させたい

    いつもお世話になっております。 EXCEL VBA で質問があります。 1つのモジュールでマクロを作成したら容量が大き過ぎてしまい、 モジュールを分けて作成しました。 5つにモジュールを分けたのですが 普通に分けただけの為、マクロが1つのモジュールしか動きません。 [call]を使う事はわかるのですが、使い方がわかりません。 ヘルプを見てみたのですが、イマイチわかりにくいです。 わかる方がおられたらヒントをください。 よろしくお願いいたします。

  • wordのマクロからexcelの起動

    wordのマクロからexcelの起動方法が分かりません。 wordファイルのマクロからexcelファイル"abc.xls"を呼び出すには、vbaで具体的にどう記載すれば良いか教えて下さい。 vba初心者につき、宜しくお願いします。

  • VBAとマクロの違い

    こんばんは。エクセル初心者です。 VBAとマクロの違いについて教えてください。 VBAというのは、プログラミング言語のことで よろしいのでしょうか? そのVBAで記述されたものをマクロとよぶ といったイメージでよろしいのでしょうか? たとえば、あるエクセルにはいってるマクロを 実行する、ということを作業マニュアルに記述 する場合 「○○マクロを実行する」というのが 正しいのでしょうか?それとも 「VBAを実行する」というのが正しいのでしょうか? まったく見当違いのご質問だったら申し訳ありません。 教えてください。

  • マクロからマクロを作成

    こんばんは。 あるエクセルファイル(A)の標準モジュールにVBAを書きます。 例えば、 workbook.add とかでワークブックを作成し、新しく作ったこのエクセルファイル(B)に(A)に登録されている標準モジュールを移植することは可能でしょうか? 可能でしたら、やり方をご教示くらはい!お願いしますmm -- エクセル2003です。

  • Excel VBAマクロを Bookオープンのとき起動したい

    Excel VBAマクロを書いています。 ExcelBookを開いたとき、自動的にマクロを起動したいのですが、 その方法を教えてください。 また、特定のCellだけを対象にした「内容変化」の イベント処理関数を作成する方法も、教えてください。 よろしくお願いします。

  • ウインドウズのマクロ

    エクセルのマクロはVBAで作成出来ますが ウィンドウズ(パソコン)のマクロは何で作成できるのでしょうか? VBで作成できますか? 例えばユーザーフォームを作ってコマンドボタンを押すと、エクセルが起動するなどの操作です。 よろしくお願い致します。

  • EXCEL VBA マクロ値 のコピーについて

    マクロの初心者です。EXCEL VBA でタイマーマクロを作成し、結果の値を他ファイルの  EXCELシートに貼り付けようとしたところ、2012/9/30 13:38が2008/9/29      13:38となり、-0:08:53が-0.00616898148・・・・となり、真値がコピーできません。どなたか教えていただけないでしょうか?