No.373903を拝見しまして、閉じたままのブックを参照できるらしいので使いたいのですが、ブックが複数ある場合、[ ]内はどのように書けば良いのでしょう?
例)
Cells(1, 1) = Application.ExecuteExcel4Macro _
("'C:\My Documents\[Book2.xls]Sheet1'!R1C1")
Book2・sheet1の部分が可変。
また、
Application.ExecuteExcel4Macro("get.document(50)")
や
Application.ExecuteExcel4Macro ("Halt(True)")
等の使い方もあるようですが、どなたかわかりやすく教えて頂けませんか?
No.5ベストアンサー
- 回答日時:
> この「’」「[ ]」とかでややこしくなって、変数を使った場合がミスってばかりいました。
> この使い方の意味とかはどういう事なのでしょうか?
普通に別ブックにリンクを貼ってリンク元ブックを閉じるとセルに下記のような式が残ります。
='C:\My Documents\[Book1.xls]Sheet1'!$A$1
これを変数を交えた文字列にしてあげるだけです。
文字列として直に書く場合は""で括ります。
例えば、↓ここまではいつも同じなので""で括ります。
"='C:\My Documents\["
変数などと繋ぐ場合は & で繋ぎます。
"='C:\My Documents\[" & 変数1
さらにいつも同じ部分を""で括って & で結合
"='C:\My Documents\[" & 変数1 & "]"
またまた変数にしたい部分を & で結合
"='C:\My Documents\[" & 変数1 & "]" & 変数2
最後にいつも同じ部分を""で括って & で結合して完成
"='C:\My Documents\[" & 変数1 & "]" & 変数2 & "'!$A$1"
これで変数1に Book1.xls を代入し、変数2に Sheet1 を代入してやれば元の式が出来ます。
Sub aaa()
変数1 = "Book1.xls"
変数2 = "Sheet1"
MsgBox "元構文:='C:\My Documents\[Book1.xls]Sheet1'!$A$1" _
& vbCrLf & _
"変数化:='C:\My Documents\[" & 変数1 & "]" & 変数2 & "'!$A$1"
End Sub
> Application.ExecuteExcel4Macro
> の構文については他にはどのように使ってらっしゃるのでしょうか?
使ってません。
下位互換用に残してあるのでは無いかと思います。
使わなくても同様の事が実現出来るハズです。
この回答への補足
初心者向け(私のような)のとても丁寧なご説明ありがとうございました。過去の質問でもお世話になりました。またの機会がありましたらよろしくお願い致します。
補足日時:2004/12/12 21:50No.6
- 回答日時:
#4のWWolfです
ユーザーフォームを作成しリストボックスを置き下記のソースを実行してみてください。
Sub Test()
Dim fs, f, f1, fc, fn, s, sy, DrPh, ITI, Da
DrPh = "c:\a"
ITI = "R1C1"
Load UserForm1
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(DrPh)
Set fc = f.Files
For Each f1 In fc
s = f1.Name
sy = Right(s, 3)
If sy = "xls" Then
UserForm1.ListBox1.AddItem s
'q = " '" & DrPh & "\[" & s & "]sheet1'!" & ITI
'Da = Application.ExecuteExcel4Macro(q)
'MsgBox Da
End If
Next
UserForm1.Show
End Sub
これができれば、次にフォームにコマンドボタン(OKボタン)を作成しリストボックスで選択されたファイルを指定して・・・というものをつくります。
頑張ってください
ご回答ありがとうございます。
ユーザーフォームについても大変興味をもっていますので、ぜひ触って勉強してみます。
コードサンプルをいただけるととても励みになります。
ありがとうございました!
No.4
- 回答日時:
での回答#4
http://okweb.jp/kotaeru.php3?q=1115112
での回答#3
のWWolfです。
上記前者の所にファイル取得してあるコードがあるので、それをリストボックスにAddして選択式ですれば可能ですよ。
ご回答ありがとうございます。
参考URLもありがとうございました。
私には難しいレベルでしたが、なんとかがんばってみます。
>リストボックスにAddして選択式ですれば
と言うのがよく分かりませんでした。
またここでは、Application.ExecuteExcel4Macro
の構文の仕方について知りたいと思っています。
みなさんどのように使ってらっしゃるのでしょうか?
No.3
- 回答日時:
1ブックに付き1ステートメントでは無いでしょうか。
だから複数個のブックに対しては、
(1)ブック名部分を変えたステートメントを次々並べるか
(2)ブック名の部分を変数化して、変数の値を変えて繰り返すか
しかなく、カンマで区切って並べたり、ARRAY(A,B,C)のような表現はできないと思います。
>閉じたままのブックを参照したいと言うことで、ExecuteExcel4Macroしかないのかどうか判りませんが
一世代前の「マクロ」時代の機能を使おうとするのは
どうかなと思います。
しかし「ファイルを閉じたまま、データを取り出すこと」はこれ以外ないのか、載ってますね
http://www.officetanaka.net/excel/vba/tips/tips2 …
http://homepage1.nifty.com/gak/MSTips/getfromclo …
WEB照会で「ExecuteExcel4Macro」で照会すると80件あまり出ますが、これぐらいが情報入手の限界で、それ以外の当時マクロを使った人も、5.0位後のVBAに切り替えたのではないでしょうか。当時ロータス123が優勢でユーザーも少なく、記憶も薄れているでしょう。エクセル4.0のマクロ解説書・マニュアルは古本屋の世界でしょうが、ここ10年もの間古本屋でも1度も見たこともありません。
この回答への補足
過去の質問等でよくお名前を拝見しています。
このたびはご回答いただけてあんまり辛口でないので安心しました。笑
またの機会がありましたらよろしくお願い致します。
No.2
- 回答日時:
> Book2・sheet1の部分が可変。
補足しますと、単なる文字列なので可変部分を変数にしちゃえば良いって事です。
"'C:\My Documents\[" & 変数 & "]" & 変数 & "'!R1C1"
ご回答ありがとうございます。
参考になります。
この「’」「[ ]」とかでややこしくなって、変数を使った場合がミスってばかりいました。この使い方の意味とかはどういう事なのでしょうか?
Application.ExecuteExcel4Macro
の構文については他にはどのように使ってらっしゃるのでしょうか?
No.1
- 回答日時:
4.0マクロ関数じゃないけど、似たような処理の回答をさっきもしました。
http://okweb.jp/kotaeru.php3?q=1120405
4.0マクロ関数については詳しくないのでパスって事で。
この回答への補足
回答ありがとうございます。
もしかして応用できるかもしれません。
考えてみます!のでお時間いただきます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- 薬剤師・登録販売者・MR 薬学部卒業後の就職について 新卒で製薬会社やCROなどに入社しても、何年か経つと薬局やドラッグストア 1 2023/05/31 19:18
- 英語 和訳の手伝いをお願いします 2 2023/02/27 11:42
- Visual Basic(VBA) ExcelVBAで、型が一致しませんのエラーについて 3 2023/06/20 09:51
- 英語 Because growth factors regulate abundance of micro 1 2022/03/28 10:12
- Visual Basic(VBA) ExcelVBAで、index、match関数を使用して、指定範囲に出力したい 3 2022/10/18 21:53
- Visual Basic(VBA) マクロで最終行を取得したい 4 2023/05/28 12:14
- Visual Basic(VBA) エクセルで、1つのセルで上書き足し算して セルの範囲を指定できますか? パソコン初心者です。 お時間 3 2023/07/05 06:13
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- 英語 Because growth factors regulate abundance of micro 1 2022/03/31 09:32
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
A4縦の2枚のワードをA3にするや...
-
ワード、上下中央揃えにしたい...
-
ワード レイアウトの崩れ
-
IMEパッドの手書き入力
-
なぜワードで開けず互換性ソフ...
-
ワードの差し込み文書で困って...
-
アップルに電話したけどやはり...
-
KADOKAWA電撃大賞の互換ソフト...
-
パソコンで見た時とスマホで見...
-
最近MacBookに変えました。 マ...
-
ワードのこと教えてくれるとこ...
-
KADOKAWA電撃文庫のSafariで見...
-
A4サイズ横位置というのは ワー...
-
スマホアプリのワードが横書き...
-
「大谷翔平」をローマ字で書くには
-
キーボードの割り当てを再起動...
-
作成した文書の名前の変化について
-
互換性のないSafariからみた画...
-
ワードが白と黒が反転してしま...
-
スマホの文書って見え方がどう...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードの行✖️文字数について。 ...
-
A4縦の2枚のワードをA3にするや...
-
A4サイズ横位置というのは ワー...
-
アップルに電話したけどやはり...
-
ワード、上下中央揃えにしたい...
-
ワードってスマホから見ると、...
-
スマホで横書きでもパソコンで...
-
txtのファイルから編集してもい...
-
スマホアプリのワードが横書き...
-
ワードのこと教えてくれるとこ...
-
スマホのワードが開かないのっ...
-
https://dengekitaisho.jp/nove...
-
表示かダウンロードのどちらか...
-
最近MacBookに変えました。 マ...
-
これってワードですか? 先方が...
-
KADOKAWA電撃文庫のSafariで見...
-
txtって、ページ番号振れないん...
-
スマホの文書って見え方がどう...
-
普通の場合は400字詰め換算でも...
-
これらアプリって購入済みにな...
おすすめ情報