2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

Access VBA 質問スレ Part1

1 :デフォルトの名無しさん:2012/02/06(月) 22:53:46.88 .net
AccessのVBAに関する質問スレです

★1 質問テンプレ(雛形)は用意しませんが、OSとAccessのバージョンは必ず書きましょう。

★2 AccessのVBA以外の部分に関する質問はNGです。
   但し、VBA無しでも出来ることだが、あえてVBAでやりたいって物に関してはOK。

★3 AccessのVBE(Visual Basic Editor)を使うとしても、VBAの分野以外に関してはスレ違いです。

 VBAとは、『Visual Basic for Application』の略で
  Application
  ├Workbooks
  |└Workbook
  |  ├Worksheets
  |  |└Worksheet
 というApplication以下のオブジェクトを、VB言語で操作するものを指します。
 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。

★4 レベルはどうあれ、ここはプログラマ用の板スレです。プログラマとは、自分でプログラムを組み、
   コードを書く人の事なので、自分でやるきは全く無く、丸投げしようって人はお断りです。
   ヒントを貰えばあとは自力でなんとかしますって人のみどうぞ。

★5 わからなければとりあえず「マクロの記録」(Alt, T, M, R)

関連スレ
Excel VBA 質問スレ Part23
http://toro.2ch.net/test/read.cgi/tech/1327763113/l50


954 :デフォルトの名無しさん:2018/09/14(金) 18:33:15.77 ID:JMy0VfN7.net
それだと[products].[price]の後が何だか分からん。

[products].[price]を求めるSQLをそのまま書くかJOIN使った方が良い。

UPDATE [working]
SET [working].[value] = (SELECT [products].[price]
FROM [products]
WHERE ((([working].[name])=[products].[name])));

UPDATE [working]
INNER JOIN [products]
ON [working].[name]=[products].[name]
SET [working].[value] = [products].[price];

スマホからテキトーに書いてるので間違ってたらスマン。

955 :デフォルトの名無しさん:2018/09/14(金) 20:41:59.46 ID:cjIZJ/+q.net
>>954
上のは,更新可能なクエリであることが必要です と怒られました.
下のは成功です.ありがとうございます.

FROMを記載したコードでは出来ないというのが興味深いですね.
クエリーと一般のSQLではコードを処理する方法がかが違うんですかね?
聞きかじりですが,オプティマイザとか実行計画とか言う奴ですかね?

次はクエリを参照するUPDATEを書かないといけないのですが,テーブルならOKでクエリでは怒られるんですよね.
http://www.10days.org/diary/20090705.htmlとかその他いろいろヒットしますが,VBAからSQLを発行したら出来るんですかね?
とりあえず実験します.

956 :デフォルトの名無しさん:2018/09/14(金) 21:06:57.90 ID:wdFP/Mir.net
>>952
横入だがAccessがUPDATEでのFROMを
サポートしていないという意味での「FROMがないから」
じゃないの?

957 :デフォルトの名無しさん:2018/09/14(金) 21:11:41.20 ID:wdFP/Mir.net
>>955
確かAccessはUPDATEでFROMは使えないぞ

958 :デフォルトの名無しさん:2018/09/14(金) 21:32:20.19 ID:cjIZJ/+q.net
>>957
マジすか?ありがとうございます.
SQLって方言が多いんですね.

959 :デフォルトの名無しさん:2018/09/15(土) 02:34:58.26 ID:7Yaecm93.net
UPDATE文は特に方言が多いんだよ

960 :デフォルトの名無しさん:2018/09/15(土) 11:35:48.46 ID:AVfR6YnT.net
>>955
更新クエリに設定しろ

961 :デフォルトの名無しさん:2018/09/16(日) 09:41:31.06 ID:o5IUt/R9.net
昔はオラクルとかに直接更新クエリ実行しようとして固まってたなあ、、、
ハード性能上がった今でも固まるのかね?

962 :デフォルトの名無しさん:2018/09/16(日) 16:10:48.91 ID:qqKBC7cw.net
リンクテーブルに対して何かするのを「直接」とは言わないからな?

963 :デフォルトの名無しさん:2018/09/16(日) 18:15:18.31 ID:HF0YmRsW.net
アスペですね

964 :デフォルトの名無しさん:2018/09/16(日) 19:05:43.00 ID:8jdJAOdP.net
それ以前に、ハード性能で固まったことなんてないんだが
単に遅いだけで固まったって言ってるのかね

965 :デフォルトの名無しさん:2018/09/16(日) 19:27:12.80 ID:yPlmt9/8.net
>>964
初代ペンティアムマシンでAccess97で動かした事無い人かな

966 :デフォルトの名無しさん:2018/09/16(日) 20:39:37.56 ID:fj0Djq38.net
>>965
それは何自慢?俺は20年前からACCESS やってるベテランだぞすごいだろう?

967 :デフォルトの名無しさん:2018/09/16(日) 22:05:06.06 ID:8jdJAOdP.net
>>965
だからそれは単に遅いだけだろうと言ってるんだが

ついでに言えば、ACCESSで外部DBMS使うときに一番気を付けるべきは回線の速さだがな
その環境でも、100MのLANならそれなりに快適だったわ

968 :デフォルトの名無しさん:2018/09/17(月) 17:09:58.71
単に遅いだけって言うけど、10分間「応答なし」になったら? 1時間なら? 1日なら?
それでも固まったって言わない?

969 :デフォルトの名無しさん:2018/09/17(月) 18:07:40.72 ID:l9KryutO.net
486DXでAccess95とか動いたっけ

970 :デフォルトの名無しさん:2018/09/17(月) 19:52:07.58 ID:3YPJfo/c.net
多分動いたと思う。
ペンティアム90では確実に動いた。
当時486DX100マシンにOffice入れてたと思うんだが、そのマシンでAccess動かしたかどうかで記憶が無い。

971 :デフォルトの名無しさん:2018/09/18(火) 01:29:37.70 ID:Bq/PEIsn.net
Windows95が動いてたからOFFICEの95も動いてたと思う

972 :デフォルトの名無しさん:2018/09/18(火) 19:14:26.16 ID:32W6TMTL.net
マハーポーシャの思い出しかないわ

973 :デフォルトの名無しさん:2018/09/18(火) 21:06:59.49 ID:Y+CFjjh5.net
>>972
出張でアキバ行ったらチラシ貰った。あんな事件起こすなんて夢にも思わず、スペックのわりに安いじゃんなんて思ってたわ。

974 :デフォルトの名無しさん:2018/10/15(月) 12:32:08.29 ID:UJZpBNX3.net
DAOでmdbに接続して、フォーム上のコントロールボタンのCaptionを大量に一括変更したいんだけど、できるかな?
データーベースオブジェクトのメンバーのリストを眺めてもフォーム関連がないので、だめなのかな?

975 :デフォルトの名無しさん:2018/10/15(月) 13:28:15.42 ID:L3fZFxj5.net
>>974
COMオブジェクト生成で
Application→Forms→Form→Controls→Control
ってたどる感じかな
最近どうなってるか知らん
https://docs.microsoft.com/en-us/previous-versions/office/developer/office-2003/aa663065(v=office.11)

976 :デフォルトの名無しさん:2018/10/15(月) 19:00:25.28 ID:UJZpBNX3.net
リンクが死んでいて読めません。
ネット探しても情報が見つかりませんね。
パッチを当てるときに便利な気がするのですが…
私が知ってるパッチはモジュールやフォームを入れ替えるものばかりですが、一部編集みたいなことが出来ると便利な気がしますがどうでしょうか。
コードを1行書き換えとか出来ると便利な気がしますが、リスクもありそうですね。

977 :デフォルトの名無しさん:2018/10/15(月) 23:32:47.15 ID:L3fZFxj5.net
>>976
MSのURLは2chのリンク表示と相性が悪いからクリック
カッコまで全部コピーしてブラウザに貼りつけないと付けると飛べるぞ

ラベルを外部リソースにしてフォーム側で呼び出すのが正攻法な気がするが
多言語対応とか

978 :デフォルトの名無しさん:2018/10/16(火) 07:11:10.97 ID:o1jBtF96.net
DAO で接続じゃなぁ

979 :デフォルトの名無しさん:2018/10/16(火) 19:50:00.82 ID:nNSV5Ror.net
接続は別になんでもいいです。

980 :デフォルトの名無しさん:2018/10/22(月) 12:14:49.52 ID:9BvHUkZ3.net
マクロの編集をVBAで出来ませんかね?バージョンアップの際にカスタマイズ済のAutokesyを再現したいもので。

981 :デフォルトの名無しさん:2018/10/23(火) 14:44:19.48 ID:qJAZHzzr.net
>>980
出来る、何年か前に前の勤め先でやったわ
あまり覚えてないが、VBEにアクセスする方法があって
それで出来たと思う

ググりながらやった覚えがあるからググれば
何かヒントが出てくると思う

982 :デフォルトの名無しさん:2018/10/23(火) 17:12:08.69 ID:D922t3yz.net
>>981
saveastextですね。あれ、最近のoffceだとゴミコードが1行あって、そのままでは読み込めないんですよね。

983 :デフォルトの名無しさん:2018/12/04(火) 21:13:39.22 ID:TBSeaia1.net
業務用ソフトでどこからもGOTOされていないラベルがあるんだけど、作った奴は馬鹿なのかな?

984 :デフォルトの名無しさん:2018/12/05(水) 13:19:49.01 ID:2sSegHBZ.net
いくらでもある

985 :デフォルトの名無しさん:2018/12/05(水) 14:21:48.59 ID:8B064Egy.net
そうですか…
宣言だけして使わない変数や、空のプロシジャー、その空のプロシジャーを呼び出す無意味なプロシジャー、戻り値を変数に格納だけしてなにも利用しない関数とか意味不明なことが多くてPGの世界ってカオスなんだな。
リーダブルコードとかだと絶対に怒られるようなことが目白押しだわ。

986 :デフォルトの名無しさん:2018/12/05(水) 14:51:15.50 ID:2sSegHBZ.net
理想と現実は違う

987 :デフォルトの名無しさん:2018/12/05(水) 15:58:58.90 ID:Tdi7Zg1z.net
そう、動きゃいいんだから
見た目なんか気にしてたら絶対に間に合わない

988 :デフォルトの名無しさん:2018/12/05(水) 17:29:29.08 ID:8B064Egy.net
なるほど…
カスタマイズしている方からすると添削をしているよう気分になりますね。
稼働しているコードの何倍もあるコメントアウトされた過去コードとかあって、正にべからず集みたいなもんですね。

989 :デフォルトの名無しさん:2018/12/05(水) 17:34:49.19 ID:kX9gokKe.net
実際問題
中身はgdgd
https://www.filemaker.com/jp/solutions/customers/stories/shinshu-ham.html

990 :デフォルトの名無しさん:2018/12/07(金) 12:18:56.42 ID:RZ2R69DU.net
>>989
FileMakerはスクリプト(マクロ)しか無いからな

991 :デフォルトの名無しさん:2018/12/07(金) 18:12:05.49 ID:Uga2tmpi.net
>>990
両方そなわってたら、Accessを潰せてたのにね。

992 :デフォルトの名無しさん:2018/12/10(月) 21:20:32.74 ID:WdAp4299.net
マクロのAutokeysが急にキーを取りこぼすようになった。F1を押すとプロシジャーの実行をしてくれないでHELPが立ち上がる。
F2等をおしても無反応になってしまった。officeのアップデートが原因かな?WIN7とAccess2016の組み合わせなんだけど分かる人いますか?

993 :デフォルトの名無しさん:2018/12/11(火) 13:04:58.28 ID:eQLW3H68.net
Access最近アプデしてないな
古いのまだ使ってる

994 :デフォルトの名無しさん:2018/12/11(火) 18:13:25.39 ID:fkccCnsx.net
>>993
2013使ってるならアプデする意味がほぼないし

995 :デフォルトの名無しさん:2018/12/11(火) 19:29:38.35 ID:cP19L9C3.net
20年くらい前はAccessファイルはいつ壊れるかわからない。
って言われてたけど、いまってどうなの?

996 :デフォルトの名無しさん:2018/12/11(火) 21:03:35.30 ID:OP7GyNdd.net
>>995
今は壊れることはなくなったよ。

997 :デフォルトの名無しさん:2018/12/11(火) 21:35:29.03 ID:kFp89+PJ.net
いつの間にかデータアクセスページなくなったの?

998 :デフォルトの名無しさん:2018/12/11(火) 23:24:33.12 ID:ADs7qBab.net
>>995
同じだと思うよ。いつもは動くプロシジャーが変な挙動するようになってそのうち、フォームが全部消えちゃうとか何度もあった。というかこの1週間でもあったよ。本当にポンコツだよ。
とはいえ、ここまでカスタマイズが自由に出来るDBって他に無いような気がするけど、どうなんだろう。

999 :デフォルトの名無しさん:2018/12/12(水) 00:19:48.14 ID:GF6Qf3Td.net
WindowsFormの不自由さにはびっくりしたな

1000 :デフォルトの名無しさん:2018/12/12(水) 10:51:22.24 ID:I3Mp/+TW.net
いまはIMEの辞書が良く壊れるイメージ

1001 :デフォルトの名無しさん:2018/12/12(水) 10:53:08.65 ID:I3Mp/+TW.net
>>998
小規模のシステムでも
テーブル用のmdbとフォーム用のmdbを分けて
リンクで管理すると壊れるケースはかなり減った

1002 :デフォルトの名無しさん:2018/12/12(水) 10:53:27.51 ID:I3Mp/+TW.net
次スレはよ

1003 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1003
274 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★