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:GF6Qf3Td424デフォルトの名無しさん
2021/09/07(火) 13:13:29.25ID:7P2mUzTw access外って?
何がやりたいかわからん
何がやりたいかわからん
425デフォルトの名無しさん
2021/09/07(火) 14:16:04.54ID:QthkAqNV ADO
ADODB
DAO
ADODB
DAO
426デフォルトの名無しさん
2021/09/08(水) 22:14:40.15ID:jpM3jR9r427デフォルトの名無しさん
2021/09/09(木) 01:34:00.79ID:4EZcQadY428デフォルトの名無しさん
2021/10/09(土) 23:35:10.80ID:uMcy1fPR VBAエキスパートって取ったほうがいいでしょうか
429デフォルトの名無しさん
2021/10/10(日) 08:29:41.88ID:fy4lWk3l 資格マニアを見る世間の目は冷たい
430デフォルトの名無しさん
2021/11/02(火) 07:37:22.79ID:0Z1mhYfJ >>428
資格より実践を積むべし
資格より実践を積むべし
431デフォルトの名無しさん
2021/11/29(月) 15:04:38.27ID:vB15GkdT レコードが存在しない場合に INSERTを動作させようとしてます
FROMが無いと、演算子がありません、となるため
ダミーの FROM を入れましたが(Oracle でいうところの dual)
レコードが追加されません
INSERT INTO t_table(id, name)
SELECT 1, "name"
FROM dummy
WHERE NOT EXISTS(
SELECT * FROM t_table WHERE(id = 1)
);
Access の INSERT での FROM や WHEREに、何か制限などありますでしょうか?
FROMが無いと、演算子がありません、となるため
ダミーの FROM を入れましたが(Oracle でいうところの dual)
レコードが追加されません
INSERT INTO t_table(id, name)
SELECT 1, "name"
FROM dummy
WHERE NOT EXISTS(
SELECT * FROM t_table WHERE(id = 1)
);
Access の INSERT での FROM や WHEREに、何か制限などありますでしょうか?
432デフォルトの名無しさん
2021/11/29(月) 15:15:06.43ID:MiFRCJa7 直接の返答じゃないけど、SQL一発書きじゃなきゃだめなの?
事前にレコード数チェックして分岐じゃだめなの?
事前にレコード数チェックして分岐じゃだめなの?
433デフォルトの名無しさん
2021/11/29(月) 15:17:50.75ID:vB15GkdT UPDATE と組み合わせて、SQL一発を考えてます
無理であれば、おっしゃるように分岐かなと
無理であれば、おっしゃるように分岐かなと
434デフォルトの名無しさん
2021/11/29(月) 16:01:33.58ID:MiFRCJa7 ちょっと気になったので手元で実験してみたけど、dummyテーブルが存在して空ではないときには
(多分)431の想定どおりの挙動をしていると思う
バッドノウハウ臭いので、おとなしく事前チェックして分岐かなぁ
まぁAccessのSQLって変だよね
(多分)431の想定どおりの挙動をしていると思う
バッドノウハウ臭いので、おとなしく事前チェックして分岐かなぁ
まぁAccessのSQLって変だよね
435デフォルトの名無しさん
2021/11/29(月) 17:41:32.65ID:XYio4/pG access はupdateいっぱつで初挿入もできたはず
しゅきーのヌルを上書きする感じで
しゅきーのヌルを上書きする感じで
436デフォルトの名無しさん
2021/11/30(火) 05:36:52.18ID:KirC+CSy >>435
さすがにそんなことはないと思うが、ちょっとサンプルコード書いてみてくれ
さすがにそんなことはないと思うが、ちょっとサンプルコード書いてみてくれ
437デフォルトの名無しさん
2021/11/30(火) 09:01:45.87ID:qEKwfbTR >>436
選択クエリは更新できる
UPDATE TableA RIGHT JOIN TableB ON TableA.ID = TableB.ID
SET TableA.ID = [TableB]![ID], TableA.Data1 = [TableB]![Data1], TableA.Data2 = [TableB]![Data2];
選択クエリは更新できる
UPDATE TableA RIGHT JOIN TableB ON TableA.ID = TableB.ID
SET TableA.ID = [TableB]![ID], TableA.Data1 = [TableB]![Data1], TableA.Data2 = [TableB]![Data2];
438デフォルトの名無しさん
2021/11/30(火) 10:50:50.28ID:d0QAjKSx439デフォルトの名無しさん
2021/11/30(火) 10:58:46.58ID:+NfPg838 >>438
単純にinsertするだけならそれでいいんだけど、existsを使って条件付けようとしてるのでvaluesは使えない(エラーになる)
単純にinsertするだけならそれでいいんだけど、existsを使って条件付けようとしてるのでvaluesは使えない(エラーになる)
440デフォルトの名無しさん
2021/11/30(火) 12:38:13.11ID:nsxxcWz3 それ自分でDUALという名称でテーブルを作って1レコード入れておけば出来るよ。
OracleのDUALも実体はそんな感じだったと思う。
OracleのDUALも実体はそんな感じだったと思う。
441デフォルトの名無しさん
2021/11/30(火) 16:33:37.59ID:KirC+CSy >>437
更新はできるけど、存在しない行を更新しようとしたとして
その行を新規追加することなんてないだろ...
と思ったけど、追加されるのか
ACCESS無茶苦茶しやがるな
リンクテーブルに対してでも追加しやがる
SQL ServerだってFromでJoinしてUPDATEできるけど、
さすがに行が追加されることなんてないぞ
エラーの原因が分からない?
更新はできるけど、存在しない行を更新しようとしたとして
その行を新規追加することなんてないだろ...
と思ったけど、追加されるのか
ACCESS無茶苦茶しやがるな
リンクテーブルに対してでも追加しやがる
SQL ServerだってFromでJoinしてUPDATEできるけど、
さすがに行が追加されることなんてないぞ
エラーの原因が分からない?
442デフォルトの名無しさん
2021/11/30(火) 16:35:34.50ID:KirC+CSy あ、最後なんか変な行入った
443デフォルトの名無しさん
2021/11/30(火) 17:23:09.43ID:aruulzL7 あくせく働くぜ
444デフォルトの名無しさん
2021/11/30(火) 18:49:33.51ID:VsTnDahT >>441
Access的には「更新可能クエリ」はテーブルと同等の扱いなのだろう
Access的には「更新可能クエリ」はテーブルと同等の扱いなのだろう
445デフォルトの名無しさん
2021/11/30(火) 22:05:19.66ID:KirC+CSy446デフォルトの名無しさん
2021/11/30(火) 22:10:51.28ID:VsTnDahT SELECT * FROM TableA RIGHT JOIN TableB ON TableA.ID = TableB.ID
これの更新だから行数は変わっていない
これの更新だから行数は変わっていない
447デフォルトの名無しさん
2021/11/30(火) 23:40:10.71ID:KirC+CSy UPDATE文で実テーブルの行数が、な
448デフォルトの名無しさん
2021/12/01(水) 09:46:36.82ID:dv4Z+qI2449431
2021/12/02(木) 11:57:32.43ID:nKskuO+T ありがとうございます
分岐で分けることにしました
分岐で分けることにしました
450440
2021/12/02(木) 22:29:47.92ID:vu0CN48k もうちょっと俺を信用してもええんやないかと思ったが
出来たんならええか
出来たんならええか
451デフォルトの名無しさん
2021/12/08(水) 11:00:44.75ID:8eCyKUYS データベースに対し、レポートを外部データの取込で追加するのですが、
この操作をGUIでなくコマンドで行う事は出来ますでしょうか。
この操作をGUIでなくコマンドで行う事は出来ますでしょうか。
452デフォルトの名無しさん
2021/12/08(水) 11:36:19.36ID:XFpeOKs/ mdbファイルまるごと差し替えでok
453デフォルトの名無しさん
2021/12/08(水) 14:57:00.86ID:8eCyKUYS454デフォルトの名無しさん
2021/12/08(水) 16:58:22.13ID:sRvDCOgH455デフォルトの名無しさん
2021/12/08(水) 18:12:44.70ID:ixTDMdmo456デフォルトの名無しさん
2021/12/08(水) 20:30:00.04ID:FsTgnRus >>451
DoCmd.TransferDatabase acImport
DoCmd.TransferDatabase acImport
457デフォルトの名無しさん
2021/12/13(月) 11:19:46.91ID:HhLRYuYl >>440,450
ありがとうございます、確認しました
dummy テーブルにレコードを入れて動作しました
INSERT INTO t_table(id, name)
SELECT 1, "name"
FROM dummy
WHERE NOT EXISTS(
SELECT * FROM t_table WHERE(id = 1)
);
ありがとうございます、確認しました
dummy テーブルにレコードを入れて動作しました
INSERT INTO t_table(id, name)
SELECT 1, "name"
FROM dummy
WHERE NOT EXISTS(
SELECT * FROM t_table WHERE(id = 1)
);
458デフォルトの名無しさん
2022/01/15(土) 00:52:56.35ID:ALzAiADU VBAって、サポート切れてんの?
企業とかこれから、多数のツールどうすんだろうね。
企業とかこれから、多数のツールどうすんだろうね。
459デフォルトの名無しさん
2022/01/15(土) 07:46:29.84ID:8MS0rOI1 サポート気にするような部署でvbaを採用するだろうか?
460デフォルトの名無しさん
2022/01/17(月) 00:16:00.31ID:oS3b1eNW VBAって単独の製品じゃないんだが
そもそもVBAがサポート切れってどこの情報だ?
そもそもVBAがサポート切れってどこの情報だ?
461デフォルトの名無しさん
2022/01/17(月) 12:28:46.14ID:t8m0YBBL OneDriveにコードをバックアップして直接開いたところ
http://imgur.com/qO7I0AB.jpg
こういった線が付きました
Office2016 Proなのですが設定等でVBエディターでも表示できますでしょうか
またお恥ずかしながらこの線の一般的な名称も教えて頂けませんでしょうか
http://imgur.com/qO7I0AB.jpg
こういった線が付きました
Office2016 Proなのですが設定等でVBエディターでも表示できますでしょうか
またお恥ずかしながらこの線の一般的な名称も教えて頂けませんでしょうか
462デフォルトの名無しさん
2022/01/17(月) 17:44:28.15ID:hBkYcVxQ >>461
何で開いたのかは知らんけど、AccessとかのVBAエディタには、そういった今どきの便利な機能は無いかと
一般名称かどうかはしらんけど、VSCodeとかの設定では Indent Guide でひっかかるんじゃないかな
何で開いたのかは知らんけど、AccessとかのVBAエディタには、そういった今どきの便利な機能は無いかと
一般名称かどうかはしらんけど、VSCodeとかの設定では Indent Guide でひっかかるんじゃないかな
463デフォルトの名無しさん
2022/01/17(月) 20:02:01.14ID:r2vXEkpI464デフォルトの名無しさん
2022/01/31(月) 11:21:11.42ID:ZCY1so+a Microsoft 365 Access Runtime ダウンロードリンクが動作してないのですが
ダウンロードできた方おられます??
ダウンロードできた方おられます??
465デフォルトの名無しさん
2022/01/31(月) 11:29:43.23ID:Di33df7w >>464
見てみたけど、ダメだねぇ
見てみたけど、ダメだねぇ
466デフォルトの名無しさん
2022/02/22(火) 22:36:04.61ID:h8gQU92u アクセス2010でVBA内でエクセルのブックを操作するためにブック選択ダイアログを開こうとしています.ブックが存在するフォルダーはc:\x\y内にあります.
それでChDirでGetOpenFilename実行時に開くフォルダーをc:\x\yにしたいのですが,規定のドキュメントフォルダーが開きます.
Debug.Print CurDirは"C:\x\y"を返しますので,システムが認識するカレントフォルダーが"C:\x\y"に変わっているのは確認済みです.GetOpenFilenameが開くフォルダーをGetOpenFilenameに変更できないことが問題です.
sub test
ChDir "C:\x\y"
Debug.Print CurDir
Set exApp = CreateObject("Excel.Application")
ChDir "C:\x\y"
Debug.Print CurDir
res = exApp.GetOpenFilename("Csv Files (*.csv), *.csv")
end sub
ところがエクセルのVBA内でtest2を実行するとフォルダーc:\x\yが開きます.
sub test2
ChDir "C:\x\y"
res=aplication.GetOpenFilename("Csv Files (*.csv), *.csv")
end sub
アクセスのVBAのから操作するとうまくいきません.解決策はないでしょうか?
それでChDirでGetOpenFilename実行時に開くフォルダーをc:\x\yにしたいのですが,規定のドキュメントフォルダーが開きます.
Debug.Print CurDirは"C:\x\y"を返しますので,システムが認識するカレントフォルダーが"C:\x\y"に変わっているのは確認済みです.GetOpenFilenameが開くフォルダーをGetOpenFilenameに変更できないことが問題です.
sub test
ChDir "C:\x\y"
Debug.Print CurDir
Set exApp = CreateObject("Excel.Application")
ChDir "C:\x\y"
Debug.Print CurDir
res = exApp.GetOpenFilename("Csv Files (*.csv), *.csv")
end sub
ところがエクセルのVBA内でtest2を実行するとフォルダーc:\x\yが開きます.
sub test2
ChDir "C:\x\y"
res=aplication.GetOpenFilename("Csv Files (*.csv), *.csv")
end sub
アクセスのVBAのから操作するとうまくいきません.解決策はないでしょうか?
467デフォルトの名無しさん
2022/02/22(火) 22:38:16.30ID:h8gQU92u 間違えました。
GetOpenFilenameが開くフォルダーをGetOpenFilenameに→
GetOpenFilenameが開くフォルダーをc:\x\yに
GetOpenFilenameが開くフォルダーをGetOpenFilenameに→
GetOpenFilenameが開くフォルダーをc:\x\yに
468デフォルトの名無しさん
2022/02/23(水) 09:19:56.78ID:yBLUqW/Q https://hironimo.com/prog/excel/vba-excel-open/#:~:text=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E9%96%8B%E3%81%8F%E3%81%AB%E3%81%AF,%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%A7%E9%96%8B%E3%81%8D%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%E3%80%82
WorkBooks.Open
WorkBooks.Open
469デフォルトの名無しさん
2022/02/23(水) 10:16:59.77ID:/GeE/zJY >>468
GetOpenFilenameでダイアログが立ち上がったときのフォルダーをc:\x\yにしたいという意味です。
GetOpenFilenameでダイアログが立ち上がったときのフォルダーをc:\x\yにしたいという意味です。
470デフォルトの名無しさん
2022/02/23(水) 14:00:43.13ID:3ksW4w1X FileDialogを使う
471デフォルトの名無しさん
2022/02/23(水) 15:58:28.79ID:noR6ud0U https://officevba.info/filedialog/ こっちスかね
メリットもデメリットも書いてあって親切
メリットもデメリットも書いてあって親切
472デフォルトの名無しさん
2022/02/23(水) 16:48:55.01ID:/GeE/zJY473デフォルトの名無しさん
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の範疇やろ
レスを投稿する
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★5 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 【ぺこ専🐰】なんG 兎田ぺこら突発配信実況スレ🏡【ホロライブ▶】
- NHKニュースウオッチ9「日本側は対話にオープンな姿勢で安定した日中関係を築きたい考えなのに中国が意固地で糸口が見いだせない」 [904151406]
- 「地獄のような戦場、ペリリュー島で若者たちは何を想い、⽣きたのか─」👈こういうの正直薄ら寒いよな。所詮ジャップよ [268718286]
- 日中戦争起きたら5日で自衛隊壊滅するらしい。じゃあ徴兵も無いし、俺等が必死になって反対してやる理由なくね? [237216734]
- 女性「なんで男はショートカット髪の女が好きなの?」 [863490854]
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ156
