Access の VBA に関する質問スレです
質問テンプレ(雛形)は用意しませんが、OSとAccessのバージョンぐらいは必ず書きましょう
前回のスレッド
Access VBA 質問スレ Part1
https://mevius.5ch.net/test/read.cgi/tech/1328536426/
Access VBA 質問スレ Part2
1デフォルトの名無しさん
2018/12/12(水) 22:14:39.18ID:GF6Qf3Td473デフォルトの名無しさん
2022/02/23(水) 16:53:30.10ID:/GeE/zJY >>472
ありがとうございます。この説明はとても親切ですね。よくわかりました
ありがとうございます。この説明はとても親切ですね。よくわかりました
474デフォルトの名無しさん
2022/02/24(木) 15:49:02.02ID:G5PhgONP >>466
Excel.ApplicationのDefaultFilePathを設定していったん終了したら、
次からそこで開くっぽいぞ
Set exApp = CreateObject("Excel.Application")
exApp.DefaultFilePath = "C:\x\y"
exApp.Quit
Set exApp = CreateObject("Excel.Application")
res = exApp.GetOpenFilename("Csv Files (*.csv), *.csv")
こんな感じか
実行したらエクセルのオプション変わっちまったww
デフォルト何だっけな
Excel.ApplicationのDefaultFilePathを設定していったん終了したら、
次からそこで開くっぽいぞ
Set exApp = CreateObject("Excel.Application")
exApp.DefaultFilePath = "C:\x\y"
exApp.Quit
Set exApp = CreateObject("Excel.Application")
res = exApp.GetOpenFilename("Csv Files (*.csv), *.csv")
こんな感じか
実行したらエクセルのオプション変わっちまったww
デフォルト何だっけな
475デフォルトの名無しさん
2022/02/28(月) 11:00:59.24ID:JmI4xSUc 初歩的な質問でお恥ずかしいのですが教えて下さい
面倒な計算や処理をして値を返す関数Aがあった場合
その戻り値を判定したい場合
If A = 1 or A = 2 then
と記述するとaccessは 2回処理することになるのでしょうか
それでしたら仮に変数(V)を用意して、一旦
V = A
のように格納してから
If V = 1 or V = 2 then
と記述したほうが処理的には一回で済むという解釈になりますでしょうか
すみませんがご教示頂けたらと思います
面倒な計算や処理をして値を返す関数Aがあった場合
その戻り値を判定したい場合
If A = 1 or A = 2 then
と記述するとaccessは 2回処理することになるのでしょうか
それでしたら仮に変数(V)を用意して、一旦
V = A
のように格納してから
If V = 1 or V = 2 then
と記述したほうが処理的には一回で済むという解釈になりますでしょうか
すみませんがご教示頂けたらと思います
476デフォルトの名無しさん
2022/02/28(月) 11:49:10.60ID:JmI4xSUc すみません、試してわかりました。
後者は一回で済みました。
質問することでその後すぐ簡単な確認方法を思いつくことがよくあります
お恥ずかしい。スレ汚し失礼しました;
後者は一回で済みました。
質問することでその後すぐ簡単な確認方法を思いつくことがよくあります
お恥ずかしい。スレ汚し失礼しました;
477デフォルトの名無しさん
2022/02/28(月) 12:38:27.12ID:jOzz1fM6 どんまい 気付きや学びに成りゃ無駄じゃ無い
478デフォルトの名無しさん
2022/02/28(月) 12:41:50.52ID:frLBMESq ちょっと違う話だけど、VBAにもOrElseやAndAlsoが欲しいなと思うときはある
479デフォルトの名無しさん
2022/03/06(日) 15:10:37.27ID:R+n9Kzax SQLの勉強をさいきんはじめました
動的SQLによる数独の超高速解法
というのを読みました
動的にSQLを生成するため
・一つはJDBCを使う方法
・もう一つはストアド・プロシージャを用いた方法
云々って書いてあります
これらって、アクセスのSQLでもできそうなものでしょうか?
(過去に話題として出てたらごめんなさい)
できそうならやってみようかと
茨の道ならあきらめます
動的SQLによる数独の超高速解法
というのを読みました
動的にSQLを生成するため
・一つはJDBCを使う方法
・もう一つはストアド・プロシージャを用いた方法
云々って書いてあります
これらって、アクセスのSQLでもできそうなものでしょうか?
(過去に話題として出てたらごめんなさい)
できそうならやってみようかと
茨の道ならあきらめます
480デフォルトの名無しさん
2022/03/06(日) 16:34:17.90ID:TgGQVPNx 2つとも分からんけど、VBAが使える環境なら動的SQLは可能なはず
481479
2022/03/06(日) 17:10:27.06ID:R+n9Kzax SQLとは、使用人から経営者になることだ
今まで自分で作業してたのをしなくてよくなる
使用人に、「こういうのを出してくれ」と
言うだけでよい
数独についてであれば、今まで
総当りするプログラムとか
条件判定とかを自分で考えていたが
SQLならそうしたものは自分で考えなくてよい
勝手に総当りして勝手に判定してくれる
・・・ということが書いてありました
これって、既存のプログラムの要件を
SQLで表現できれば中身は考えなくてよい
ってことですよね けっこうおもしろいかも
今まで自分で作業してたのをしなくてよくなる
使用人に、「こういうのを出してくれ」と
言うだけでよい
数独についてであれば、今まで
総当りするプログラムとか
条件判定とかを自分で考えていたが
SQLならそうしたものは自分で考えなくてよい
勝手に総当りして勝手に判定してくれる
・・・ということが書いてありました
これって、既存のプログラムの要件を
SQLで表現できれば中身は考えなくてよい
ってことですよね けっこうおもしろいかも
482デフォルトの名無しさん
2022/03/07(月) 07:14:29.39ID:xVPINsIe 経営しなくてもお金が稼げるSQLがどこかに書いてあると良いのに。
483デフォルトの名無しさん
2022/03/07(月) 12:53:13.63ID:+OeG3Wfd484デフォルトの名無しさん
2022/03/07(月) 13:11:37.42ID:3lxJ/2QX これかな?
https://codezine.jp/article/detail/1627
https://codezine.jp/article/detail/1628
https://codezine.jp/article/detail/1629
記事中においてJavaでSQLを生成している部分はVBAで書けるだろうけれど、
他のRDBMSで使えるSQLの全てがAccessでも使えるわけじゃないから
その辺をうまく置き換えたりVBAで補ったりする必要はあると思う
https://codezine.jp/article/detail/1627
https://codezine.jp/article/detail/1628
https://codezine.jp/article/detail/1629
記事中においてJavaでSQLを生成している部分はVBAで書けるだろうけれど、
他のRDBMSで使えるSQLの全てがAccessでも使えるわけじゃないから
その辺をうまく置き換えたりVBAで補ったりする必要はあると思う
485デフォルトの名無しさん
2022/03/07(月) 14:07:14.74ID:tjPYNfUL 各DBで使えるSQL構文一覧表
(ROLLUPは jet使えない oracleはokとか)
のページが昔あったのに
今見たら見あたらなかったわ
(ROLLUPは jet使えない oracleはokとか)
のページが昔あったのに
今見たら見あたらなかったわ
486デフォルトの名無しさん
2022/03/08(火) 06:28:34.40ID:fGzXxwFZ 総あたりする場合、SQLはどうやって
候補を管理してるんだろ?
ふつうにメモリ上に持ってたら
メモリが足りないような
候補を管理してるんだろ?
ふつうにメモリ上に持ってたら
メモリが足りないような
487デフォルトの名無しさん
2022/03/08(火) 20:13:50.94ID:fGzXxwFZ 数字の書かれたパネルがあります
このパネルのマスをいくつか
ぬりつぶし、残った数字の積が、
たて・横のどの列も12になるように
してください
2523
6257
5262
2334
これぐらいの規模の問題で
練習したほうがいいかも
ぬりつぶしは1に置き換える
このパネルのマスをいくつか
ぬりつぶし、残った数字の積が、
たて・横のどの列も12になるように
してください
2523
6257
5262
2334
これぐらいの規模の問題で
練習したほうがいいかも
ぬりつぶしは1に置き換える
488デフォルトの名無しさん
2022/03/09(水) 11:17:27.88ID:wDARNtYc 動的SQLっていうから
DBエンジンにSQL投げる
↓
その結果を受けて自分を書き換えて
再度新しいSQL投げる
↓
望む結果になるまで繰り返す
みたいな話を期待したら
拍子抜けだった
DBエンジンにSQL投げる
↓
その結果を受けて自分を書き換えて
再度新しいSQL投げる
↓
望む結果になるまで繰り返す
みたいな話を期待したら
拍子抜けだった
489デフォルトの名無しさん
2022/03/10(木) 18:36:45.22ID:y/Xk/sN2 >>487
SELECT 解答
FROM すべてのあり得る盤面
WHERE 今回の条件
だから
まず盤面を1行にして
2523625752622334
と表す
すべてのあり得る盤面は
2523625752622334
2523625752622331
2523625752622314
2523625752622311
〜
1111111111111111
だけどこれをどうSQL文の中で
表現すればいいのかわからん
SELECT 解答
FROM すべてのあり得る盤面
WHERE 今回の条件
だから
まず盤面を1行にして
2523625752622334
と表す
すべてのあり得る盤面は
2523625752622334
2523625752622331
2523625752622314
2523625752622311
〜
1111111111111111
だけどこれをどうSQL文の中で
表現すればいいのかわからん
490デフォルトの名無しさん
2022/03/11(金) 12:30:05.01ID:+z9vFN5I491デフォルトの名無しさん
2022/05/01(日) 00:28:53.70ID:uZ+uV6s8 VBAのコード内の文字を置換するプログラムをVBAで行うことはできるでしょうか?
置換の組合せが複数あるので一つずつCtrl+Hで操作すると間違いそうなので,
置換前文字列と置換後文字列の配列を書いて,それを順に実行するようにしたいのです.
自分のコード内に当該置換文字列をがでてくるので,その回避も考えないといけないですが
よろしくお願いします
置換の組合せが複数あるので一つずつCtrl+Hで操作すると間違いそうなので,
置換前文字列と置換後文字列の配列を書いて,それを順に実行するようにしたいのです.
自分のコード内に当該置換文字列をがでてくるので,その回避も考えないといけないですが
よろしくお願いします
492デフォルトの名無しさん
2022/05/01(日) 07:29:11.23ID:1HGTgNe1 >>491
できるよ
できるよ
493デフォルトの名無しさん
2022/05/01(日) 07:36:23.30ID:1HGTgNe1 ごめん、AccessVBAスレだった
知らん
知らん
494デフォルトの名無しさん
2022/05/01(日) 16:14:10.55ID:4P2yloMu ACCESSにもApplication.VBEがあるっぽいから、エクセルとかと同じようにできるんじゃね
そもそもコード内をそうそう置換するって状況がよくわからんがな
そもそもコード内をそうそう置換するって状況がよくわからんがな
495デフォルトの名無しさん
2022/05/01(日) 20:13:11.92ID:uZ+uV6s8 >>494
オブジェクト名を修正すると,名前の自動修正機能で,オブジェクト間の整合性は保たれます.
例えば,Aクエリー内でBテーブルを使用していて,Bの名前をCに変更するとA内のBテーブル名もCに自動的に修正されます.
ところが,コード内でオブジェクト名を引数に使用している場合(DoCmd.OpenQuery()やQeryDef()など)は,自動的に修正されないので
コード内の文字置換で修正するしかありません.
オブジェクト名をより統一的にしたいとか,あるルールで短くしたいなどの事情です.
でも本当にコードを使ってコード内の文字置換できますか?
「エクセルとかと同じようにできる」とのことですが,エクセルのVBAでできる方法を知りません.
オブジェクト名を修正すると,名前の自動修正機能で,オブジェクト間の整合性は保たれます.
例えば,Aクエリー内でBテーブルを使用していて,Bの名前をCに変更するとA内のBテーブル名もCに自動的に修正されます.
ところが,コード内でオブジェクト名を引数に使用している場合(DoCmd.OpenQuery()やQeryDef()など)は,自動的に修正されないので
コード内の文字置換で修正するしかありません.
オブジェクト名をより統一的にしたいとか,あるルールで短くしたいなどの事情です.
でも本当にコードを使ってコード内の文字置換できますか?
「エクセルとかと同じようにできる」とのことですが,エクセルのVBAでできる方法を知りません.
496デフォルトの名無しさん
2022/05/01(日) 20:33:27.28ID:XyObubkl >>494がApplication.VBEってヒント出してくれてるのに自分で調べる気は無いの?
497デフォルトの名無しさん
2022/05/01(日) 20:51:07.35ID:uZ+uV6s8 >>496
いままでApplication.VBEとVBAの違いをしりませんでした.
Application.VBEで検索して,オブジェクトであることをしりました.
できそうな気がしてきました.
調べます
いままでApplication.VBEとVBAの違いをしりませんでした.
Application.VBEで検索して,オブジェクトであることをしりました.
できそうな気がしてきました.
調べます
498デフォルトの名無しさん
2022/05/01(日) 21:27:48.04ID:q0kLnjNb >>497
お前みたいな馬鹿は、方法自体間違えていると思うよ
お前みたいな馬鹿は、方法自体間違えていると思うよ
499デフォルトの名無しさん
2022/05/01(日) 22:36:20.05ID:uZ+uV6s8500デフォルトの名無しさん
2022/05/01(日) 23:10:31.48ID:q0kLnjNb やっぱり馬鹿だったか
馬鹿に馬鹿と指摘すると怒りだす
馬鹿に馬鹿と指摘すると怒りだす
501デフォルトの名無しさん
2022/05/03(火) 18:13:45.75ID:hABwtxOZ502デフォルトの名無しさん
2022/05/03(火) 21:57:49.43ID:uVFGqhpy >>501
ありがとう。勉強になります。
ありがとう。勉強になります。
503デフォルトの名無しさん
2022/05/03(火) 23:56:04.39ID:9Zz7qGMa コードとデータは分離しなさーい!
504デフォルトの名無しさん
2022/05/04(水) 01:12:27.06ID:L2QcoKdh >>503
オブジェクト名はデータにできない
オブジェクト名はデータにできない
505デフォルトの名無しさん
2022/05/04(水) 01:29:47.87ID:T57Ht3+D 名前は文字列だろ!
VBAの提供するオブジェクトは大抵コレクションで管理されているだろ!
お前の作ったオブジェクトも管理できるようにしろ!
初歩だぞ初歩!
VBAの提供するオブジェクトは大抵コレクションで管理されているだろ!
お前の作ったオブジェクトも管理できるようにしろ!
初歩だぞ初歩!
506デフォルトの名無しさん
2022/05/04(水) 01:39:45.29ID:L2QcoKdh つまらん
もういいよ
もういいよ
507デフォルトの名無しさん
2022/05/04(水) 03:22:14.79ID:bSJdUNny やっぱり馬鹿だった
508デフォルトの名無しさん
2022/05/04(水) 08:25:20.61ID:L2QcoKdh >>507
人のこと馬鹿、馬鹿ってほんとにうるさい奴だな
今回のアプリは俺しか使わずオブジェクト名変更も今回限りが確定しているんで、
オブジェクト名をデータ化できるCreateQueryDefなどを使う手間を省いてクエリデザイナーを使っているだけ。
そういう事情も含めて「もういいよ」と書いたんだけど、読み取れんわな。
お前は実生活で他人の事情を汲み取る力が弱くて他人から避けられてるだろう。
実生活では流石に馬鹿と面罵しないとは思うが態度にはでてると思うよ。
エクセルVBAのようにワッチョイ付きならNG登録するんだが。
人のこと馬鹿、馬鹿ってほんとにうるさい奴だな
今回のアプリは俺しか使わずオブジェクト名変更も今回限りが確定しているんで、
オブジェクト名をデータ化できるCreateQueryDefなどを使う手間を省いてクエリデザイナーを使っているだけ。
そういう事情も含めて「もういいよ」と書いたんだけど、読み取れんわな。
お前は実生活で他人の事情を汲み取る力が弱くて他人から避けられてるだろう。
実生活では流石に馬鹿と面罵しないとは思うが態度にはでてると思うよ。
エクセルVBAのようにワッチョイ付きならNG登録するんだが。
509デフォルトの名無しさん
2022/05/04(水) 12:11:33.62ID:T57Ht3+D 何人登録するつもり?
510デフォルトの名無しさん
2022/05/06(金) 14:43:39.68ID:HOAU3QSN >>508
もういいから馬鹿は黙ってろ
もういいから馬鹿は黙ってろ
511デフォルトの名無しさん
2022/05/11(水) 09:14:31.47ID:+mNN1hZ/ ここはBKのあつまりでつか?
51244
2022/06/18(土) 22:47:23.35ID:yLkug1TW 味噌も糞もいるのがこういう掲示板の特徴
それが面白ければ来るし退屈なら来ない
文句言うのはカッコ悪い
それが面白ければ来るし退屈なら来ない
文句言うのはカッコ悪い
513デフォルトの名無しさん
2022/06/19(日) 06:53:58.66ID:R9q2ZnJn >>512
こういうのかっこ悪い
こういうのかっこ悪い
515デフォルトの名無しさん
2022/06/21(火) 16:34:11.41ID:q4pJaYn5 test
516デフォルトの名無しさん
2022/06/21(火) 16:34:30.21ID:q4pJaYn5 アプリケーションタイトルについて質問です。
今使ってるmdbのタイトルが2種類あって、「Access」のものと「ファイル名:データベース-フルパス-Access」のものがあります。
全部後者のタイトルにしたいのですが、設定の仕方がわかりません。
ヤフー知恵袋の「Accessのタイトルバーにファイル名を表示させることはできますか。
Excelでは表示されるのですがAccessでは”Access”としか表示されず少し不便なので、、」
を読むと何の設定もしなくても後者のようになると書いている人がいます。
どうしたらそうなるのでしょうか?
後者のやつは別にAppTitleとかで設定していませんので不思議です。
今使ってるmdbのタイトルが2種類あって、「Access」のものと「ファイル名:データベース-フルパス-Access」のものがあります。
全部後者のタイトルにしたいのですが、設定の仕方がわかりません。
ヤフー知恵袋の「Accessのタイトルバーにファイル名を表示させることはできますか。
Excelでは表示されるのですがAccessでは”Access”としか表示されず少し不便なので、、」
を読むと何の設定もしなくても後者のようになると書いている人がいます。
どうしたらそうなるのでしょうか?
後者のやつは別にAppTitleとかで設定していませんので不思議です。
517516
2022/06/21(火) 17:34:19.49ID:q4pJaYn5 解決しました。
518デフォルトの名無しさん
2022/06/21(火) 19:20:51.51ID:EkCiEQiW519516
2022/06/21(火) 19:44:50.71ID:q4pJaYn5 >>518
いろいろ試したけど、結論は超簡単。
ファイル→オプション→現在のデータバース→アプリケーションオプション→ドキュメントウィンドオプション→タブ付ドキュメントをon
これでファイル名とパス名が表示されて複数のmdbを起動しても混乱しなくなりました。
いろいろ試したけど、結論は超簡単。
ファイル→オプション→現在のデータバース→アプリケーションオプション→ドキュメントウィンドオプション→タブ付ドキュメントをon
これでファイル名とパス名が表示されて複数のmdbを起動しても混乱しなくなりました。
520デフォルトの名無しさん
2022/06/21(火) 20:23:15.71ID:QtwFSmmg OS:win10
Ver:365 16.0
フォルダの中に複数のExcelファイルがあります
accessで全てのエクセルの同一セルの文字をテーブルにまとめたいのです
Accecc vba エクセルの特定のセル
などで検索してみましたが解決に至っていません
どうかお力添えお願いします
Ver:365 16.0
フォルダの中に複数のExcelファイルがあります
accessで全てのエクセルの同一セルの文字をテーブルにまとめたいのです
Accecc vba エクセルの特定のセル
などで検索してみましたが解決に至っていません
どうかお力添えお願いします
521デフォルトの名無しさん
2022/06/21(火) 20:46:00.64ID:kU7/2TZz 何がしたいかと、どこまで出来て何がわからないのか詳しくかけ
522デフォルトの名無しさん
2022/06/22(水) 10:12:43.83ID:N/5JiATv >>520
Excelシート全てインポートすればクエリー加工出来ると思うが、、
Excelシート全てインポートすればクエリー加工出来ると思うが、、
523デフォルトの名無しさん
2022/06/22(水) 10:16:19.65ID:N/5JiATv >>520
Excelシートリンクでも良いぞ
Excelシートリンクでも良いぞ
524デフォルトの名無しさん
2022/06/22(水) 10:27:56.84ID:lUHG2pSs ネ申エクセルからデータを拾いたいとかそんな話じゃね?
CreateObject("Excel.Application")
使って対象ファイル開いて、そっからさきはExcel VBAの範疇やろ
CreateObject("Excel.Application")
使って対象ファイル開いて、そっからさきはExcel VBAの範疇やろ
525デフォルトの名無しさん
2022/06/22(水) 12:36:20.21ID:N/5JiATv なんだ
Accessでテーブル化したい、のでは無いのか?
何やりたいのか分からんな
Accessでテーブル化したい、のでは無いのか?
何やりたいのか分からんな
526デフォルトの名無しさん
2022/06/22(水) 15:16:59.53ID:Z6mZqai9 「AccessVBAからexcelファイルのセル参照ってどうやるの?」ていう質問でしょ
527デフォルトの名無しさん
2022/06/22(水) 20:19:24.91ID:rLKMJdnt 質問には答えられるけど
答えるとまた次の質問が来るのが予測出来るからまんどくせ
答えるとまた次の質問が来るのが予測出来るからまんどくせ
528デフォルトの名無しさん
2022/06/23(木) 06:46:56.49ID:nErcbU9U >>527
スレに来ないと良いよ
スレに来ないと良いよ
529デフォルトの名無しさん
2022/06/23(木) 07:36:49.86ID:xe+L83Np530デフォルトの名無しさん
2022/06/23(木) 12:13:27.06ID:jwJvRDT9 ACCESS VBA EXCEL CELLでクグルと沢山出て来ますね。
ACCESSからEXCEL開いて操作できると便利です、頑張ってください。
ACCESSからEXCEL開いて操作できると便利です、頑張ってください。
531デフォルトの名無しさん
2022/06/23(木) 12:56:15.59ID:uoofWh9e >>529
CreateObject("Excel.Application")でエクセルを操作できるようにする
対象とするシートからa3とb4とw30の値を取得して変数 X Y Z に格納する
変数 X Y Z の値をAccess のテーブルに追加する
この二つの処理を全てのシートにループで行う
釣りが終わったExcel オブジェクトを閉じる
Access のオブジェクトの閉じる
これでいけるんじゃね?
CreateObject("Excel.Application")でエクセルを操作できるようにする
対象とするシートからa3とb4とw30の値を取得して変数 X Y Z に格納する
変数 X Y Z の値をAccess のテーブルに追加する
この二つの処理を全てのシートにループで行う
釣りが終わったExcel オブジェクトを閉じる
Access のオブジェクトの閉じる
これでいけるんじゃね?
532デフォルトの名無しさん
2022/06/24(金) 06:07:38.19ID:X+tgL9yK533デフォルトの名無しさん
2022/06/26(日) 13:37:45.11ID:DTfGvOZF534デフォルトの名無しさん
2022/06/26(日) 22:59:47.94ID:Ter0iV/V たびたびすみません
ばしっとフォルダ内のファイル名を取得することはできました
>CreateObject("Excel.Application")でエクセルを操作できるようにする
これの意味がようやくわかりました ありがとうございます
C:\Users\sanae\Desktop\vba\Book1.xlsx というExcelファイルのa3を変数に入れようとしているのですが
ぐぐったところファイルパスをつける書きかたが参考にできるページがみあたらず詰まっています
(このあたりにファイルパスとかシートとかを指定して)range(3.1) みたいなやり方かなあなんて思っているのですがどれもエラーになっちゃいました
参考になるページでもご教示いただければ幸いでございます
ばしっとフォルダ内のファイル名を取得することはできました
>CreateObject("Excel.Application")でエクセルを操作できるようにする
これの意味がようやくわかりました ありがとうございます
C:\Users\sanae\Desktop\vba\Book1.xlsx というExcelファイルのa3を変数に入れようとしているのですが
ぐぐったところファイルパスをつける書きかたが参考にできるページがみあたらず詰まっています
(このあたりにファイルパスとかシートとかを指定して)range(3.1) みたいなやり方かなあなんて思っているのですがどれもエラーになっちゃいました
参考になるページでもご教示いただければ幸いでございます
535デフォルトの名無しさん
2022/06/27(月) 00:21:56.25ID:LR8Jvthl >>534
http://officetanaka.net/excel/vba/file/file01.htm
を参考にしてください。
Sub Sample1
set mybook=myexel.Workbooks.Open "C:\Users\sanae\Desktop\vba\Book1.xlsx"
x=mybook.worksheets(1).range("A 3")
X の値をテーブルに書き込む
End Sub
myexelはクリエイトオブジェクトで作ったエクセルオブジェクトね
あと変数は適当に定義しておいてね。
http://officetanaka.net/excel/vba/file/file01.htm
を参考にしてください。
Sub Sample1
set mybook=myexel.Workbooks.Open "C:\Users\sanae\Desktop\vba\Book1.xlsx"
x=mybook.worksheets(1).range("A 3")
X の値をテーブルに書き込む
End Sub
myexelはクリエイトオブジェクトで作ったエクセルオブジェクトね
あと変数は適当に定義しておいてね。
536デフォルトの名無しさん
2022/06/27(月) 01:42:38.20ID:Yed1CrTu537デフォルトの名無しさん
2022/06/27(月) 01:45:22.88ID:Yed1CrTu すみませんCTRL+エンターで送信になってしまいました
・フォルダを指定してファイル名を取得
・指定したシートから変数XYZに特定のセルの値を取得
・XYZの値をテーブルに追加
超進みました
後は指定したシート名を持たないファイルに遭遇した時にどんなエラーになるのかが気になりますので
近々時間みつけて頑張ろうと思います
ありがとうございました!超ハッピー!
・フォルダを指定してファイル名を取得
・指定したシートから変数XYZに特定のセルの値を取得
・XYZの値をテーブルに追加
超進みました
後は指定したシート名を持たないファイルに遭遇した時にどんなエラーになるのかが気になりますので
近々時間みつけて頑張ろうと思います
ありがとうございました!超ハッピー!
538デフォルトの名無しさん
2022/06/27(月) 01:59:55.53ID:YAQt7RYR 馬鹿は二度と来るなよ
539デフォルトの名無しさん
2022/06/27(月) 08:41:44.29ID:yeeW9wqV VBAでやらなくてもテーブルimportで出来るやろ
無駄な努力だな
無駄な努力だな
540デフォルトの名無しさん
2022/06/27(月) 11:56:31.55ID:LR8Jvthl541デフォルトの名無しさん
2022/06/27(月) 15:59:24.18ID:jKYPD+Yx 対象のExcelファイルが固定なのか、頻繁に入れ替わるかどうかにもよるわな
542デフォルトの名無しさん
2022/06/27(月) 20:22:09.19ID:UdQiWAN3 どなたか教えてください。
売掛金消し込みのマクロを作成しています。VBAでソルバーを自動化したいと思っています。
目的セル、制約条件の参照セルの開始行が40行ごとに下がっていき、指定値は数値ではなく、セルを指定したいです。
とりあえず、全部の変数をvariant型にしてますが、なかなか上手くいきません。
売掛金消し込みのマクロを作成しています。VBAでソルバーを自動化したいと思っています。
目的セル、制約条件の参照セルの開始行が40行ごとに下がっていき、指定値は数値ではなく、セルを指定したいです。
とりあえず、全部の変数をvariant型にしてますが、なかなか上手くいきません。
543デフォルトの名無しさん
2022/06/27(月) 20:42:56.65ID:NFVjaUBh なんでAccessVBAスレにまで書いてるんだよ
544デフォルトの名無しさん
2022/06/28(火) 12:01:23.56ID:W8L8uteA こんな奴が作るプログラムで金勘定とか笑えるわ
己を知らないって馬鹿の特徴なんだよな
己を知らないって馬鹿の特徴なんだよな
545デフォルトの名無しさん
2022/06/28(火) 12:08:16.40ID:S7aFTH1N >>542
Access VBAスレでExcelの質問するなよ
Access VBAスレでExcelの質問するなよ
546デフォルトの名無しさん
2022/06/28(火) 12:53:23.92ID:illrnTHm EXCELで記録したVBAをACCESSで実行するとEXCELはXlmxにしなくても良いからじゃないの?
ソルバーは使い方わからんのでなんにも言えなくてスマン。
ソルバーは使い方わからんのでなんにも言えなくてスマン。
547デフォルトの名無しさん
2022/06/28(火) 13:14:48.17ID:v0i+TmEN >>546
Excel VBAスレみればなにがあったのか分かるよ
Excel VBAスレみればなにがあったのか分かるよ
548デフォルトの名無しさん
2022/06/28(火) 21:08:59.28ID:i28fB/zi 昨日アホな質問した541です。
accessスレにexcel VBAについて投稿してしまい、すみませんでした。
VBA初心者なので、よくわからずに投稿してしまいました。
accessスレにexcel VBAについて投稿してしまい、すみませんでした。
VBA初心者なので、よくわからずに投稿してしまいました。
549デフォルトの名無しさん
2022/06/29(水) 10:01:41.27ID:Es0nfTu8 初心者を言い訳にする香具師は同じ失敗を繰り返す
550デフォルトの名無しさん
2022/06/29(水) 12:18:55.14ID:C7zOwXa/ 狭量にすぎる
551デフォルトの名無しさん
2022/06/29(水) 12:31:17.45ID:WL8L6KaP スレを間違ったことではなくマルチが問題なのだがな
552デフォルトの名無しさん
2022/06/29(水) 13:27:42.53ID:tPok425v553デフォルトの名無しさん
2022/06/29(水) 13:50:40.09ID:Es0nfTu8 x VBA初心者
o 5ch初心者
o パソコン初心者
o コミュ障入門者(上級)
o 5ch初心者
o パソコン初心者
o コミュ障入門者(上級)
554516
2022/06/30(木) 01:00:46.93ID:1OP/W/CA DoCmd.OpenReport "レポート名", acViewPreview
DoCmd.PrintOut acPrintAll, , , acHigh, 枚数
新規レポートにラベルを貼っただけものだと希望どおりの枚数が印刷される.
しかし,別のレポートだと常に1枚しか印刷されない.
ネットでも同じ報告を確認した.バグ説もある.
皆さんはどうですか?やっぱりバグですかね?
DoCmd.PrintOut acPrintAll, , , acHigh, 枚数
新規レポートにラベルを貼っただけものだと希望どおりの枚数が印刷される.
しかし,別のレポートだと常に1枚しか印刷されない.
ネットでも同じ報告を確認した.バグ説もある.
皆さんはどうですか?やっぱりバグですかね?
555516
2022/06/30(木) 16:01:17.27ID:1OP/W/CA 解決した.
デコンパイルとコンパクトしたらいつの間にか設定した枚数が印刷されるようになった.
accessはマジで面倒くさいなあ.
デコンパイルとコンパクトの待ち時間をを返して欲しいよ
デコンパイルとコンパクトしたらいつの間にか設定した枚数が印刷されるようになった.
accessはマジで面倒くさいなあ.
デコンパイルとコンパクトの待ち時間をを返して欲しいよ
556デフォルトの名無しさん
2022/06/30(木) 19:00:33.50ID:PX9/MxY9 デコンパイル、知りませんでした。
557デフォルトの名無しさん
2022/06/30(木) 20:22:38.17ID:1+oYjPxt デコンパイル、昔は割と鉄板の解決方法だったんだけどね
それでだめなら新規作成して全モジュールインポートとかもあったな
最近は必要性が減ったけど、まだたまにはあるんだな
それでだめなら新規作成して全モジュールインポートとかもあったな
最近は必要性が減ったけど、まだたまにはあるんだな
558516
2022/06/30(木) 22:53:16.59ID:1OP/W/CA コンパクトだけでも良かったのかも知れないが,習慣で両方やることにしている
ついいましがたも.Docmd.OpenReportのOpenArgsがレポートに渡らなくて困っていたが,コンパクトをしたら作動した.
終了時にコンパクトするオプションがあるくらいだから頻繁にやるべきなんだろうね.
コード書いているときは非常に頻繁に破損するからね.
ついいましがたも.Docmd.OpenReportのOpenArgsがレポートに渡らなくて困っていたが,コンパクトをしたら作動した.
終了時にコンパクトするオプションがあるくらいだから頻繁にやるべきなんだろうね.
コード書いているときは非常に頻繁に破損するからね.
559デフォルトの名無しさん
2022/06/30(木) 23:46:30.14ID:1+oYjPxt あれはデータ領域を圧縮するのが主で、コード部分にはあまり影響しなかった気がするが
最近のアクセスでコードが破損するのはだいぶ減ったと思うが
VBEからコンパイルするだけで解決してたんじゃないか?
最近のアクセスでコードが破損するのはだいぶ減ったと思うが
VBEからコンパイルするだけで解決してたんじゃないか?
560516
2022/07/01(金) 00:40:02.55ID:SILFs/Ha くわしいことはわからないが,挙動不審が治ることがあるんだよねえ
とにかく,試行錯誤していると必ずと言っていいほど,壊れるよねえ.
メモリーが不足していますとか出始めると,その日のうちに全フォーム消失とか起こるからなあ.
とにかく,試行錯誤していると必ずと言っていいほど,壊れるよねえ.
メモリーが不足していますとか出始めると,その日のうちに全フォーム消失とか起こるからなあ.
561デフォルトの名無しさん
2022/07/01(金) 10:45:11.72ID:x9gnk4T5 試行錯誤の過程のほとんどを貯め込むからな 設定で「終了時に最適化」で、都度終了を心掛けるか
大幅な改修の度にコンパイルのクセを付けるか ファイルサイズに気を付けて、「こんなサイズのはずは無い」ってな時は要注意
で、それは、お道具の使い方が雑、間違ってるってだけで、すぐAccessのせいにする連中はお里が知れる ってこと
大幅な改修の度にコンパイルのクセを付けるか ファイルサイズに気を付けて、「こんなサイズのはずは無い」ってな時は要注意
で、それは、お道具の使い方が雑、間違ってるってだけで、すぐAccessのせいにする連中はお里が知れる ってこと
562516
2022/07/07(木) 15:33:38.95ID:9tJXVGoG 下のコードでmdbのディレクトリが表示されると思いきや、
ディレクトリ Documents
フルパス C:\Users\MyName\Documents
が表示された。vbsならscriptの存在するディレクトリだからmdbの存在するディレクトリが表示されると思ったのに、違う。
このことを説明してある資料ありますかね?
Sub test()
Dim fso
Dim objfolder
Set fso = CreateObject("Scripting.FileSystemObject")
Set objfolder = fso.GetFolder(".")
Debug.Print "ディレクトリ", objfolder.Name
Debug.Print "フルパス", objfolder.Path
End Sub
ディレクトリ Documents
フルパス C:\Users\MyName\Documents
が表示された。vbsならscriptの存在するディレクトリだからmdbの存在するディレクトリが表示されると思ったのに、違う。
このことを説明してある資料ありますかね?
Sub test()
Dim fso
Dim objfolder
Set fso = CreateObject("Scripting.FileSystemObject")
Set objfolder = fso.GetFolder(".")
Debug.Print "ディレクトリ", objfolder.Name
Debug.Print "フルパス", objfolder.Path
End Sub
563デフォルトの名無しさん
2022/07/07(木) 16:12:50.20ID:N4ENiOaQ564デフォルトの名無しさん
2022/07/07(木) 19:57:05.70ID:V/fQnZ1U そもそも、
>vbsならscriptの存在するディレクトリ
が間違ってる気がするが
カレントディレクトリの概念って最近は説明されてるの見ないなぁ
GetFolder(".")が返してるのはカレントディレクトリ(からの相対パスで自分自身)
カレントディレクトリはACCESS.EXEの場所や.MDBファイルの場所とは別に存在する
まあMDB開くときはそこをカレントにする場合が多いけどな
つねに一致してるとは限らん
>vbsならscriptの存在するディレクトリ
が間違ってる気がするが
カレントディレクトリの概念って最近は説明されてるの見ないなぁ
GetFolder(".")が返してるのはカレントディレクトリ(からの相対パスで自分自身)
カレントディレクトリはACCESS.EXEの場所や.MDBファイルの場所とは別に存在する
まあMDB開くときはそこをカレントにする場合が多いけどな
つねに一致してるとは限らん
565516
2022/07/07(木) 20:26:42.06ID:9tJXVGoG >>564
> そもそも、
> >vbsならscriptの存在するディレクトリ
> が間違ってる気がするが
VBSで稼働していたスクリプトをVBAに移植している際に気づいたので、正しいと思います。
スクリプトを任意のフォルダにコピーしてそのフォルダ内のファイルを一括処理するのに使っていましたので。
> そもそも、
> >vbsならscriptの存在するディレクトリ
> が間違ってる気がするが
VBSで稼働していたスクリプトをVBAに移植している際に気づいたので、正しいと思います。
スクリプトを任意のフォルダにコピーしてそのフォルダ内のファイルを一括処理するのに使っていましたので。
566デフォルトの名無しさん
2022/07/07(木) 20:31:06.22ID:ty1oWU7C chdirで変えられちゃうけど
567516
2022/07/07(木) 20:55:49.31ID:9tJXVGoG ユーザはおいら1人だからいいのです。
568デフォルトの名無しさん
2022/07/07(木) 21:30:15.27ID:V/fQnZ1U いやだから、scriptの存在するディレクトリじゃなくて、
カレントディレクトリが表示されてるって話なんだがな
たまたまそれが同じだっただけだ
ここ理解しないと思ったディレクトリが表示されない理由が理解できないぞ
カレントディレクトリが表示されてるって話なんだがな
たまたまそれが同じだっただけだ
ここ理解しないと思ったディレクトリが表示されない理由が理解できないぞ
569デフォルトの名無しさん
2022/07/07(木) 22:24:24.15ID:rKn8i4wF 馬鹿に何を言っても無駄な例だぞ
570デフォルトの名無しさん
2022/07/08(金) 10:33:00.73ID:aHYxM19P571デフォルトの名無しさん
2022/07/08(金) 12:10:02.96ID:/znuHP85 カレントディレクトリみたいな、あやふやなものを使ってはいけない。
これが使えるのは、絶対に変化しない場合だけ
起動時に、特定のフォルダを指定するとか、
あらかじめ定数などに保存しておく
これが使えるのは、絶対に変化しない場合だけ
起動時に、特定のフォルダを指定するとか、
あらかじめ定数などに保存しておく
572デフォルトの名無しさん
2022/07/08(金) 12:16:33.93ID:/znuHP85 例えばデスクトップに、以下のショートカットを作ると、
WSL2 で、Ubuntu 18.04 を起動して、
その /home/ユーザー名/test ディレクトリを、VSCode で開く
リンク先
C:\Windows\System32\wsl.exe code .
作業フォルダ
\\wsl$\Ubuntu-18.04\home\ユーザー名\test
WSL2 で、Ubuntu 18.04 を起動して、
その /home/ユーザー名/test ディレクトリを、VSCode で開く
リンク先
C:\Windows\System32\wsl.exe code .
作業フォルダ
\\wsl$\Ubuntu-18.04\home\ユーザー名\test
レスを投稿する
ニュース
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★5 [BFU★]
- 「母の部屋に安倍氏が表紙の機関誌が」「(安倍氏が被害者なのは)不思議に思いませんでした」山上被告の妹が証言 [おっさん友の会★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 【高市売り】円安、止まらず!凄い勢いで暴落中。157円へ [219241683]
- いまファミレスで机に突っ伏して寝てる家出少女みたいなJKがいるんだけどさ
- 【悲報】ヤフコメ民「中国が水産物を輸入禁止にするなら、日本国民向けに安く販売すればいい。中国依存から脱するべき」 [153736977]
- 1,000万円のBMWに擦ってしまった札幌のガキ、捕らえられてガチで詰む [329329848]
- >>3と>>5のワードを使ってai生成する
- 「韓国人の高市早苗評」、限界突破。 [592058334]
