Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7138 / 13645 ツリー ←次へ | 前へ→

【40965】エクセルマクロをエクセル開かずに・・・ 超素人 06/7/27(木) 8:56 質問[未読]
【40967】Re:エクセルマクロをエクセル開かずに・・・ だるま 06/7/27(木) 9:08 発言[未読]
【40971】Re:エクセルマクロをエクセル開かずに・・・ 超素人 06/7/27(木) 9:25 質問[未読]
【40973】Re:エクセルマクロをエクセル開かずに・・・ ハチ 06/7/27(木) 9:40 発言[未読]
【40974】Re:エクセルマクロをエクセル開かずに・・・ ハチ 06/7/27(木) 9:45 発言[未読]
【40975】Re:エクセルマクロをエクセル開かずに・・・ だるま 06/7/27(木) 9:54 回答[未読]
【40976】Re:エクセルマクロをエクセル開かずに・・・ 超素人 06/7/27(木) 10:01 質問[未読]
【40978】Re:エクセルマクロをエクセル開かずに・... neptune 06/7/27(木) 10:50 発言[未読]
【40979】Re:エクセルマクロをエクセル開かずに・・・ ハチ 06/7/27(木) 10:51 発言[未読]

【40965】エクセルマクロをエクセル開かずに・・・
質問  超素人  - 06/7/27(木) 8:56 -

引用なし
パスワード
   こんにちわ。
いつもここでお世話になっております。
今回もよろしくお願いします。

早速ですが、題名にあるとおりエクセルVBAをエクセルのブックを開かずに実行することはできますか?コマンドプロンプト?またはほかの何かの方法で?

時間をできる限り短縮したいため、「エクセルを開いて、Visual Basic Editorを開いて作成したマクロをインポートして実行して保存して終了」という作業をできれば避けたいのです。
マクロを実行するエクセルブックは基幹システムから自動的に一定の場所に保存されます。

以上、よろしくお願いします。

【40967】Re:エクセルマクロをエクセル開かずに・...
発言  だるま WEB  - 06/7/27(木) 9:08 -

引用なし
パスワード
   >「エクセルを開いて、Visual Basic Editorを開いて作成したマクロをインポートして
>実行して保存して終了」という作業をできれば避けたいのです。

マクロでの書き換え対象ブックに、必ずしもマクロが含まれている必要はありません。
というよりも逆に、通常はマクロブックとデータブックは分けておくべきです。

ということで、単に別のブックを操作するようにマクロを書いておき、時間短縮するなら
そのブックを常に開いておけば良いのではありませんか。^d^

【40971】Re:エクセルマクロをエクセル開かずに・...
質問  超素人  - 06/7/27(木) 9:25 -

引用なし
パスワード
   ▼だるま さん:
早速のご回答ありがとうございます。

ブックは基幹システムである処理を行うと書き換えられます。
つまり、ブックを開き直さないといけないのです。

その上、エクセルブックは開いて編集などはしません。
また別のアプリケーションからブック内のデータをインポートするだけのために使います。

どうにかなりませんか??

よろしくお願いします。

【40973】Re:エクセルマクロをエクセル開かずに・...
発言  ハチ  - 06/7/27(木) 9:40 -

引用なし
パスワード
   ▼超素人 さん:
▼超素人 さん:

それは・・・
「メーラーを起動することなく(常駐アプリもなく)、メールを受信したい」
と言ってるのと同じことでは?
動作しているのを見せないようにはできるかもしれませんが、
「Excelを起動せずに」はできないと思います。

データがcsvなどならExcelマクロではない方法で編集すれば良いのでは?

【40974】Re:エクセルマクロをエクセル開かずに・...
発言  ハチ  - 06/7/27(木) 9:45 -

引用なし
パスワード
   ▼ハチ さん:
>▼超素人 さん:
>
>それは・・・
>「メーラーを起動することなく(常駐アプリもなく)、メールを受信したい」
>と言ってるのと同じことでは?

たとえが悪かったです。
メールはCUIでも受信できますね・・・

【40975】Re:エクセルマクロをエクセル開かずに・...
回答  だるま WEB  - 06/7/27(木) 9:54 -

引用なし
パスワード
   よく、ブックのことをエクセルと呼ぶ方がいます。

そうだとすると、対象ブックを開かずにマクロでそのブックから値を取得できないか
という質問でしょうか。^d^

そうでしたらこんな感じのコードで可能です。

Sub test()
  With Range("A1")
    .Formula = "=[Book2.xls]Sheet1!A1"
    .Value = .Value
  End With
End Sub

【40976】Re:エクセルマクロをエクセル開かずに・...
質問  超素人  - 06/7/27(木) 10:01 -

引用なし
パスワード
   ▼ハチ さん:

>データがcsvなどならExcelマクロではない方法で編集すれば良いのでは?

データはcsvです。どのように編集したら一番簡単でしょうか?
私がマクロで行っている作業は、並べ替え、郵便番号の「-」を抜く、二つある住所の列を住所を1つにまとめるなどです。

ご教授ください!!

よろしくお願いします。

【40978】Re:エクセルマクロをエクセル開かずに・...
発言  neptune  - 06/7/27(木) 10:50 -

引用なし
パスワード
   ▼超素人 さん:
横から失礼します。
VBSでFileSystemObject を使用したらExcelを起動させる必要は
ないんじゃないんですか?
参考:
VBS
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/script56/html/vbswhat.asp
FSO:
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/script56/html/jsobjFileSystem.asp

自分でやったことはないですが、VBAで自分でプログラムを書くスキルがあれば
楽に出来ると思いますよ。

【40979】Re:エクセルマクロをエクセル開かずに・...
発言  ハチ  - 06/7/27(木) 10:51 -

引用なし
パスワード
   ▼超素人 さん:
>▼ハチ さん:
>
>>データがcsvなどならExcelマクロではない方法で編集すれば良いのでは?
>
>データはcsvです。どのように編集したら一番簡単でしょうか?
>私がマクロで行っている作業は、並べ替え、郵便番号の「-」を抜く、二つある住所の列を住所を1つにまとめるなどです。
>
>ご教授ください!!
>
>よろしくお願いします。

だるまさんも書かれているように
「Excelは起動しても良いが、ブックは開きたくない」でしたら
こちらのサイトの検索で「csv 読み込み」などで
検索すれば大量にサンプルがありますよ。

それ以外の方法だとすると・・・
VBSでも出来そうですけど。
こちらで質問するのは主旨が違いますね。

7138 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free