◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

Access VBA 質問スレ Part2 YouTube動画>1本 ->画像>5枚


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1544620479/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

1デフォルトの名無しさん2018/12/12(水) 22:14:39.18ID:GF6Qf3Td
Access の VBA に関する質問スレです

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


前回のスレッド
Access VBA 質問スレ Part1
http://2chb.net/r/tech/1328536426/

2デフォルトの名無しさん2018/12/13(木) 00:13:52.55ID:6Z+s7/ms
女性の体にアクセスするにはどうすればよいですか?

3デフォルトの名無しさん2018/12/13(木) 18:14:38.10ID:OtD2AZ3g
プロパティーシートから直接Functinをcallするときに=Function()と書きますね。
これをvbaで設定できますか?
モジュールプロパティーのCreateEvetnPorcからは当然ながらできません。
どのオブジェクトのメソッドならできますかね?それとも不可能でイベントプロシジャーでcall Functionと書くしか方法がないのでしょうか?

4デフォルトの名無しさん2018/12/13(木) 18:44:40.99ID:OtD2AZ3g
自己解決しました。

5デフォルトの名無しさん2019/01/13(日) 23:33:33.86ID:c2khr5fz
順位が1位から20位までのデータがあったとして、

SQLを使用して、下位3件のデータを上位から取得(18位、19位、20位の順)するにはどうすればよいですか?

6デフォルトの名無しさん2019/01/20(日) 08:19:09.61ID:cWi8furK
select * from (select top 3 * from テーブル名 order by 順位 desc) order by 順位 asc

7デフォルトの名無しさん2019/01/20(日) 19:20:31.32ID:gJkAP+bh
>>6
ありがとうございます。これです。これがやりたかったんです。本当にありがとうございます!

8デフォルトの名無しさん2019/01/30(水) 21:17:34.34ID:L0BPGpLZ
業務用mdbを眺めていたら,モジュールレベルでPublic宣言とGlobal宣言が混在している.
このPGはアホなのかな?

9デフォルトの名無しさん2019/01/31(木) 19:42:49.72ID:fGTESevq
Excelからmdb更新するとかありなの?

10デフォルトの名無しさん2019/02/01(金) 21:39:02.72ID:IN4mmcqP
テーブル定義いじるやつはマゾだがデータ更新なら普通だろ

11デフォルトの名無しさん2019/02/02(土) 15:17:40.44ID:wM22Ef9l
そういえばGlobalって余り使わないけど
publicとどういう差が有るのかは知らないなぁ

12デフォルトの名無しさん2019/02/20(水) 18:39:48.45ID:tMuImGOR
会社のPCがようやく7から10に切り替わり、
ついでにofficeが2010から2016になった。

そしたら・・・・・・
Accessのシステムが壊滅状態(;_;)
一番シンプルなところで、DateTimePickerがない・・・。

Access2016で日付フィールドとリンクしてない状態で、カレンダー使うのどしたらいいの・・・
2010と互換性を維持したまま

13デフォルトの名無しさん2019/02/20(水) 21:54:34.71ID:oRzq8AWm
もうAccessを卒業するんだ

14デフォルトの名無しさん2019/02/21(木) 13:02:36.57ID:L3EKz/Re
参照設定弄ってもだめなの?

15デフォルトの名無しさん2019/02/21(木) 19:38:17.35ID:MzKG4O6f
>>14
情シス「VBのランタイム入れません。よくわからないから。」

(;_;)

16デフォルトの名無しさん2019/02/21(木) 19:55:52.51ID:mRRRBv2X
>>12
カレンダー用のOCXだかDLLだかを持ってきて入れれば動くはずけど
ライセンス的にどうだか知らない

>>14
そもそもそのコンポーネントが今のACCESSに無くなってるから
2016をクリーンインストールしてれば参照設定できない

2010とかランタイム版あったはずだから、2016入れた後からインストールできるなら
それ入れれば行ける気がする
試して報告してくれ

17デフォルトの名無しさん2019/02/21(木) 20:11:01.25ID:3prgeWcz
そもそもAccessって、サポートあるの?
あるとしたら、SA結んだら何回までオッケーただしおま環は知らんみたいな?

18デフォルトの名無しさん2019/02/23(土) 08:51:07.40ID:ILyuCfk+
>>15
それじゃどうしようもないじゃん

19デフォルトの名無しさん2019/03/02(土) 05:49:40.18ID:6x5b9DFI
Accessの謎の異常終了は、永久に治らないの??

20デフォルトの名無しさん2019/03/02(土) 18:30:04.00ID:AjPA8Eq0
microsoftはしかたなくaccessを続けているだけで
microsoftは多分本気でやる気はないよ
本気ならとっくに2G制限も越えているだろうしネットワーク処理機能搭載くらいしている
microsoftが本気ならファイルメーカーがやってる感じくらいの機能搭載や改良はしてる筈
office製品の一部だから止められないだけで
本格的な改修とかは無いと思っていた方が良い
絶対無いとは思わないけど
今ある範囲でやれる内容をこなす程度で期待とかはしないほうが良いと思う

21デフォルトの名無しさん2019/03/04(月) 09:50:39.88ID:TvaJY4yu
そもそも元々MS製品じゃないしなあ。

22デフォルトの名無しさん2019/03/04(月) 19:28:23.37ID:6LdJdRvZ
そうなの?

23デフォルトの名無しさん2019/03/05(火) 17:59:42.40ID:sbeNr1jL
元々別会社が作っていた物を会社ごと買収してaccessって名前にして出した?
みたいな経緯だったと思う
確かwikipediaとかに書いてあったと思う
だからなんつーか
microsoftも余り思い入れが無いというか本気で無いというか
そういう感じの所が有るのは仕方が無いのよ
寧ろここまで続いている方が驚き
近年他のアプリケーションの値段が上がっている中でaccessは値上げもたいしてしないし(はっきり確認したわけではないが)
vb6.0が終わったのに比べて
良くaccessはこんなに続くなぁとは思う
vb6.0とaccessvbaなんて殆ど同じなのになんでvb6.0止めたんだろうと思うくらい
64bit版は出すのに本格改修なんかはするつもりないみたいだし
いったい何処まで続くのかある意味解らなくなってきた
他のアプリケーションが大きく変わったり無くなっている中で
これだけ変わらず(細かい点を除けば)長く続くのはかなり珍しい気がする

24デフォルトの名無しさん2019/03/05(火) 22:29:47.29ID:x8iA6KfG
止めたら影響大きいだろうな。電子カルテもあるし。

25デフォルトの名無しさん2019/03/06(水) 07:31:01.14ID:5/Lsh2ff
言語仕様がほとんど変わらないおかげで20年前のシステムが今も使えている
開発コストと保守コスト考えたらAccessは素晴らしいよ

269362019/03/06(水) 11:17:38.29ID:OF16p3z1
ローカルでランダムアクセスできるAccessは気楽でいい

27デフォルトの名無しさん2019/03/09(土) 21:57:04.20ID:QAZD12fZ
excel vbaとaccess vba
どっちの方が実用的ですか?

28デフォルトの名無しさん2019/03/09(土) 23:04:33.82ID:M4mulWlp
>>27
必要に合わせてどっちも実用的

29デフォルトの名無しさん2019/03/10(日) 00:06:55.04ID:PvuKZe7P
T_商品というテーブルを用意し、そこには次の内容が入っており、
商品      材料1 材料2 材料3
卵かけご飯    卵   米
お好み焼き    小麦  卵   豚肉
ショートケーキ  卵   小麦  苺
アップルパイ   りんご 小麦  牛乳

フォームに、材料A、材料Bのテキストボックスを置き、
検索ボタンを押すと、材料AかつBを含む商品が検索されるというVBAの記述に苦慮しています。
単独の材料であれば、VBAにSQLを組み込み、
SELECT * FROM 商品テーブル WHERE 材料1 = ' & 材料A & ' OR 材料2 = ' & 材料A & ' OR 材料3 = ' & 材料A & ' ;
こんな感じでできるのですが、材料が2つ以上になるとどうすればよいか見当がつかなくなりました。
アドバイスいただけませんでしょうか?

30デフォルトの名無しさん2019/03/10(日) 01:11:27.75ID:W5FlChvZ
>>29
1がAかB
かつ
2がAかB
かつ
3がAかB
じゃないかな…眠くて間違ってる気もする…
あと、候補がおおすぎないなら、テキストボックスはコンボかな…(フォーム起動遅くなるなど副作用もあったりするのでこの案は無視して可)
おやすみなさい…

31デフォルトの名無しさん2019/03/10(日) 01:18:29.26ID:W5FlChvZ
>>30
間違ってます。zzz

32デフォルトの名無しさん2019/03/10(日) 13:11:16.19ID:FsgNmDsH
>>29
悪いことは言わんから、まずテーブル設計見直せ

33デフォルトの名無しさん2019/03/10(日) 15:10:38.80ID:z6hGNEnV
馬鹿の次の質問

材料4を追加した時にはどうすれぱよいでしょうか?

34デフォルトの名無しさん2019/03/10(日) 17:44:21.19ID:f/eJ/LOS
>>27
そもそもExcelでは応用効かない

35デフォルトの名無しさん2019/03/10(日) 17:46:58.02ID:f/eJ/LOS
>>15
Visual Studio ExpressでDLL作れ

36デフォルトの名無しさん2019/03/10(日) 17:55:45.50ID:hFpGjFbx
>>29
そのテ―ブルはちょっと…
商品のテーブルと材料のテーブルで結合じゃね?

37デフォルトの名無しさん2019/03/10(日) 18:51:26.88ID:hpBR8lHx
accessは大昔にやってて今は持ってすらいないけど

該当行をdynasetで取り出した後
該当fieldから値を取り出して
if分で有るか調べれば出来たりしないか?

38デフォルトの名無しさん2019/03/10(日) 18:58:03.76ID:9Z3HOdWo
いくらでも増やしていいぞ

SELECT * FROM 商品テーブル
WHERE (材料1 = ' & 材料A & ' OR 材料2 = ' & 材料A & ' OR 材料3 = ' & 材料A & ')
AND ("" = ' & 材料B & ' OR 材料1 = ' & 材料B & ' OR 材料2 = ' & 材料B & ' OR 材料3 = ' & 材料B & ')
AND ("" = ' & 材料C & ' OR 材料1 = ' & 材料C & ' OR 材料2 = ' & 材料C & ' OR 材料3 = ' & 材料C & ');

39デフォルトの名無しさん2019/03/10(日) 22:38:23.14ID:mPydjeZt
いやぁぁぁぁぁぁぁ

40デフォルトの名無しさん2019/03/10(日) 23:14:01.04ID:hFpGjFbx
だから、材料フィールドを横に並べるのは作りが悪いだろ。
フィールド1個にして縦に並べるべきじゃね?

41デフォルトの名無しさん2019/03/10(日) 23:50:20.06ID:CvNRnyCH
unionで繋げばいいんじゃね

42デフォルトの名無しさん2019/03/11(月) 00:08:26.31ID:B6nWiYCU
設計の問題だろ。
できるできないの問題じゃない。

なんで使い勝手の悪いもんをわざわざ作らなきゃならんのよ。

43デフォルトの名無しさん2019/03/11(月) 08:04:29.38ID:fslMg+hg
取り敢えず動かすなら、
材料1〜4をカンマで連結した文字列の中に、AとB両方ある
と書けば人間にはわかりやすい

44デフォルトの名無しさん2019/03/11(月) 13:56:54.71ID:IRjWKGwj
まぁリレーショナルデータベースだから設計を変えるべきだけど
access使うような所なんて零細なんだから
そんなリファクタリングだのテストファーストだのモダンだのオブジェクト指向だのも関係無いような人材しか居ないんだから
vbaベタベタというのでやるしかない
みたいな感じなんだろう
その人がそれしか出来ないならvbaベタベタしか方法が無かったりする
この人がそうなのかは知らないけど

45デフォルトの名無しさん2019/03/12(火) 00:15:11.07ID:S+rkIDbC
普通の設計にしたとして
countが3以上の〜、とかやるのが正しいの?
なんか不安なんだが

46デフォルトの名無しさん2019/03/12(火) 12:34:12.09ID:xgWEcpqA
なんでcountなんて話になってるの?
商品テ―ブルと材料テーブルで結合するなら、商品テーブルには材料IDのフィールドが1つしかないんだから、材料IDのフィールドに材料AのIDと材料BのIDを持つ商品を検索するだけだよ。

47デフォルトの名無しさん2019/03/12(火) 14:56:37.82ID:4U4zzI9j
一つの材料IDフィールドに2つの材料IDをカンマ区切りで入れるのが正解なの?
リレーショナル全否定?

48デフォルトの名無しさん2019/03/12(火) 21:15:05.16ID:0vZ7cwHu
リレーショナルデータベースを前提にするならどんな設計が一番使い勝手がよいんだろうかね

49デフォルトの名無しさん2019/03/12(火) 22:39:48.12ID:o5cGPdg/
>>46
商品テーブル、材料テーブル、商品の材料テーブルを作って、こんな感じで

SELECT [商品] FROM 商品の材料
WHERE 材料 IN (Form!材料A, Form!材料B, Form!材料C)
GROUP BY [商品]
HAVING Count([商品]) >= Form!条件数;

材料A,B,CそれぞれのサブクエリをJIONするよりは速い気がする

50デフォルトの名無しさん2019/03/13(水) 08:11:10.52ID:mGUeq4U2
>>49
うん、基本的に同じ考えだ。
以下の書き込みをしようとしてたが、放置してた。

>>47
何を言ってるんだ?
俺はカンマ区切りなんて言ってないぞ。

リレーショナルが分かってるなら>>29みたいにゃならんだろうよ。
卵かけご飯の材料1の卵と材料2の米は、材料1を米、材料2を卵と取り替えちゃいかんのか?
そんなこと無いだろ。
こういう同じ種別の物を別フィールドにすると管理出来なくなるだろ。

商品         材料
卵かけご飯のID    卵のID
卵かけご飯のID    米のID
お好み焼きのID    小麦のID
お好み焼きのID    卵のID
お好み焼きのID    豚肉のID
ショートケーキのID  卵のID
ショ−トケーキのID  小麦のID
ショートケーキのID  苺のID
アップルパイのID   りんごのID
アップルパイのID   小麦のID
アップルパイのID   牛乳のID

こういう風にして商品マスタ、材料マスタ、商品作成の3テーブルにする。
しかし、商品、材料どっちのテーブルの場合もそうだが他に管理したい情報がないならそれぞれマスタテーブルやめてIDの所を商品名や材料名にしてテーブル減らしても良い。
その場合は最小1テ―ブルになる。
なお、>>46は商品マスタをやめて2テーブルにした場合だ。

51デフォルトの名無しさん2019/03/13(水) 11:51:37.19ID:SZfR/Pu+
仕様が解らないからアレだけど
そのhaving countだと同じ材料が複数行登録されていた場合に
フォームに設定した別々な材料で検索した時に検索しても且つ条件にならないんじゃないかな?
同じ材料を登録できないように作ってあれば問題無いと思うけど
その辺どうなんだろうか?
まぁ作りと要求次第だと思うけど
的外れだったらごめんよ
ちょっと気になったんで

複数列の場合に連結してから文字列検索で探すというのは
sqlが長く複雑になり難いかもしれないね

何にしても実現の仕方は色々有るね
その人の技量や置かれている状況次第だろうね

52デフォルトの名無しさん2019/03/13(水) 19:07:03.88ID:0FHnOJ4A
最初に不安だと書いているように私もCountは邪道だと思ってるんですよね
「なんでcountなんて話になってるんだ」と怒られる程度には

それで、いろいろな方法がある中で「王道」をご指導いただけないんでしょうか?

53デフォルトの名無しさん2019/03/13(水) 21:35:24.37ID:uWZ9EglX
>>51
基本的に、テーブルには誤りのあるデータは登録しない
逆に言うと、読み出したデータに誤りがあるかもしれないなら、全ての読み出し処理の後に全項目の妥当性チェックが必要になる

54デフォルトの名無しさん2019/03/15(金) 17:36:53.07ID:FQsGmuzT
製品テーブルと素材テーブルと連結用テーブルの三つつくる
あとIDいらんから消して

55デフォルトの名無しさん2019/03/15(金) 18:33:31.75ID:sIXN3DPH
idいらないのではってこと時々あるよね。
性別項目なんて"男"、"女"って直接入れてエエやんて思う。

56デフォルトの名無しさん2019/03/15(金) 18:46:17.04ID:sIXN3DPH
>>54
id使わないなら 1テーブルでええんとちゃう?

57デフォルトの名無しさん2019/03/15(金) 18:47:49.00ID:sIXN3DPH
>>56
余りにも近視眼でした

58デフォルトの名無しさん2019/03/15(金) 19:00:16.39ID:Yw8dh4/K
>>55
性別はboolでいい

ただしオカマちゃんなどに対応するため
Bool 肉体の性別
Bool 精神の性別
Bool 改造後の性別
Bool 住民基本台帳の性別
Bool 一般公開する性別
Bool セキュリティで保護された性別
などのフィールドを用意するのがベスト

59デフォルトの名無しさん2019/03/15(金) 20:17:51.87ID:GDnHo62/
SLC、MLC、TLC、QLCだな

60デフォルトの名無しさん2019/03/15(金) 21:26:19.10ID:dImV5MMR
オカマでも、男専、バイ、女専と分けないとトイレで掘られるリスクが

61デフォルトの名無しさん2019/03/16(土) 08:42:08.72ID:sYsfNqTH
Excel VBA質問スレが最後までいって終わったので、次スレ検索したらここが出てきた
Excel VBA質問スレの新スレはないのか?

62デフォルトの名無しさん2019/03/16(土) 08:43:02.89ID:sYsfNqTH
Excel VBA質問スレでもAccessの話が話題に出るので、ここと統合してもいいんじゃね?
VBAメインの話だろ

63デフォルトの名無しさん2019/03/16(土) 10:08:04.54ID:DkwCTpbs
>>29がダメな理由、データベースがわからない人にどう説明したら良いんだろ。
ウチの会社も、みんなこうやって作りたがるんだよな。

商品 1月売上 2月売上 3月売上 4月売上 ・・・

64デフォルトの名無しさん2019/03/16(土) 13:39:03.23ID:zPyGim4X
難しいだろうね
リレーショナルデータベースにおける正規化って
コンピューター的な都合でテーブルを分けてる
でも実際には依頼伝票と明細というものは
人間の感覚的には一体として扱う方が感覚的に自然だからそういう風になってしまう
何の為にリレーショナルで正規化をするのか?
というのをデータの不整合が起きないようにを集中化させる為である事を教えるしかないけど
コンピューターがどういう風に処理をすると
効率的だったり安全だったりするか
を理解しておかないと難しい
表計算の延長や通常の感覚のままだと無理だと思う
大げさに言うと
コンピューターサイエンスの知識が必要
って事になる思う
accessはリレーショナルな所を活用して効率化しているから結構難しい面が有る
どうしても無理なら

でも使うという手も有るw

65デフォルトの名無しさん2019/03/16(土) 17:31:16.60ID:3KVWdS7r
>>54
横槍ど素人でごめん。
連結用テーブルってのは>>50みたいなのでおkってことですか?
最近ACCESS初めて同じようなことしようと思ってます。

66デフォルトの名無しさん2019/03/16(土) 19:49:12.47ID:3keflQuI
>>65
そそ。
あそこに並んでる表を入れておくのが連結テーブル
あれがなぜ必要かはわかると思うので略
商品、材料テーブルの内容から、自ずと連結テーブルも必要になり、そういうテーブル構成になることは別に特殊なことではありません

67デフォルトの名無しさん2019/03/17(日) 08:42:17.71ID:n1sOdbaQ
こんなスレがあるぞ

VBAに関する質問はこちらへどうぞ
Excel、Access、Outlook分ける必要ないだろ

VBAなんでも質問スレ Part2 [転載禁止](c)2ch.net
http://2chb.net/r/tech/1432173164/

68デフォルトの名無しさん2019/03/17(日) 10:57:55.94ID:j70B1v+S
>>66
ありがとうございます。
実際は、製品のそれぞれの材料をどれくらい使ったかを管理する必要があるのですが、その場合、
製品テーブル
材料テーブル
製品と材料の連結テーブル
連結テーブルと使用量の入力用テーブルが必要になるイメージですかね?
VBAスレでしたね。テーブルの作り方はここではないのはわかってるのですが、何かこのあたりのテーブルやフォームの作成のヒントになる書籍とかあれば教えていただけませんか?

69デフォルトの名無しさん2019/03/17(日) 13:57:54.89ID:2pkDyHvs
excelとaccessはアプリケーションとして随分違うから分けた方が良い
excelの方が進みが速いし
access相談系ってここ以外に案外質問スレが見当たらないし(自分が知らないだけで実際には有るかも知れないけど)

分量で分けるなら
excel
access,word,outlook,その他?
みたいに二つに分けた方が良い

excelは利用している人の数が段違いだろうし
上の質問みたいに
材料1,材料2,...
みたいにするのはaccessでは合い難いけど
excelでは割とそういう風に使うから
違いは大きい
それにexcelvbaの方は見てないけど
accessとexcel勢で何か悶着有ったみたいだし

基本は分けた方が良い

70デフォルトの名無しさん2019/03/17(日) 17:33:15.64ID:5mJrF7aW
>>63
Excelに慣れて表を想像するから。
DBはリレーションを想像すべきで表を想像すべきじゃない。

>>64
リレーションに慣れてれば自然に正規化しようとするようになる。

71デフォルトの名無しさん2019/03/17(日) 23:33:28.89ID:L17xYYyd
>>68
まず、製品、材料、連結テーブルの中で使用量を格納できる(格納するのがふさわしいか)のはどのテーブルかを考える。
ふさわしいテーブルがなければ新テーブルを追加するが、使用量は連結テーブルに格納すればいいのではと理論建てて考えられるようになりましょう。

書籍は近所に大きめの書店があれば、自分の好みで選びましょう。図が多いとかカラフルなのが見やすいとか。
初級本は2、3回見ればあまり出番なくなると思いますが、どんなことができるのかとか効率よく知るのに有効です。
他は、逆引きとか、テクニック本とかがいろいろな処理を書く上で有効で、長く役立ってくれるでしょう。

72デフォルトの名無しさん2019/03/17(日) 23:53:15.91ID:L17xYYyd
>>63
データベースに限ったことではないが、最小限の入力(手間)で最大限の結果(伝票だけでなく売上集計や分析など)を得ることが目標。
平たく言えば、楽(効率アップ)しようと思わない人、そのために努力しようと思わない人には伝わらない。

オレは説得するのは諦めた。残業代増やしたい奴ばっかりだから

73デフォルトの名無しさん2019/03/18(月) 00:03:45.33ID:01/djhoo
馬鹿には無理

これが真実

74デフォルトの名無しさん2019/03/18(月) 19:45:55.30ID:WjETnlu5
構造ならSQLとかDBのアンチパターン解説本
>>65
他にも連結用テーブルはプライマリをフィールド二つの複合にして
それぞれに元テーブルとの外部キーつくること

75デフォルトの名無しさん2019/03/19(火) 06:30:11.40ID:4N2t7FIS
みんなこっちにいるよ
http://2chb.net/r/tech/1432173164/

76デフォルトの名無しさん2019/03/19(火) 23:41:14.03ID:PLWGdEFL
馬鹿でも仕事をしなきゃならない
そういう人は材料1,材料2,...でやれるなら
それでやってもらうしかない
頭いい奴だけで後は生活保護で構わない
とかで良いなら話は別だけど?
その辺を理解出来ないアホが多くて困る
正規化を理解しないでaccess使っている人間と種類的には同じ
自分がやれる事が一番と思って他を考えていない

77デフォルトの名無しさん2019/04/25(木) 10:33:32.47ID:I6sE8Jku
32bitのAccess2016を使っています。
いままではinteger型で済むものはlong型にしてはいけない。メモリーの無駄遣いと思ってきました。
しかし、ベンチマークをとるとlong型の方が速いという主張を頻繁に見るようになりました。
数字は全部long型にした方がいいのでしょうかね?

78デフォルトの名無しさん2019/04/25(木) 11:52:04.10ID:vKKospK1
>>77
昔々はそうだった
しかし、今はあり余るメモリをたらふく使って、高速にとか、プログラム書きやすくとかになってる。
(もちろん限度ってものはある)

昔は8bitや 16bit CPUだから、長い桁は時間かかった。今は 64bitなので、それ以下に収まれば充分高速。
(数億回ループするのは稀なので、あるなら都度ベンチ取ってロジックなど決めるといい)
SIMDにより多く詰め込めるとかもあるけど、VBAでは多分使われてないから気にしなくていい

わざわざ longに直す必要はない。これからは気にせず long使っていい

79デフォルトの名無しさん2019/04/25(木) 15:22:48.68ID:I6sE8Jku
>>78
でも、longに直したくなりますよねw
標準モジュールは一括置換→保存で問題ありませんでしたが、
フォームでやってみたら、すぐにメモリー不足やら、フォーム破損が生じてしまいましたw

80デフォルトの名無しさん2019/04/25(木) 17:43:41.51ID:ImBWEqP9
馬鹿に教えるとロクなことをしない例

81デフォルトの名無しさん2019/04/25(木) 18:18:18.21ID:I6sE8Jku
実験用のコピーだよ。
楽しく実験するのがプログラミング上達の近道だと思うんだよね。

82デフォルトの名無しさん2019/04/25(木) 20:40:48.35ID:JpEf0ZAX
>>81
実験は大切。失敗もベンチ取るのも身になる。
実験ソースや結果も Accessのテーブルに分類して残しとくんだぞ
(オレは、ソースはモジュールに置いて、コメントに結果を書いてたりもする。もちろん他言語などはテーブルやプロジェクトにしてなど)
カンペ作ったときみたいに忘れないもんだが、将来の追試や数値が役に立つ(まれに)

83デフォルトの名無しさん2019/04/25(木) 22:25:13.99ID:CJM7ooRn
>>81
後付けの言い訳乙
実験するよう連中はこんなところで質問なんかせんわ

84デフォルトの名無しさん2019/04/26(金) 05:09:51.54ID:ebeJOjHo
>>83
Access界隈っこういう人が多い気がするなあ。
実験用コピーじゃなかったら真っ青になってるだろうなw

85デフォルトの名無しさん2019/04/26(金) 13:04:47.02ID:azgsbPV3
新人の頃は良く失敗した
数値フィールドをテキスト型で定義したり
データ、システム分離しなくてmdb破損させたり
手元の最新版壊して顧客PCまで最新版取りに戻ったり

86デフォルトの名無しさん2019/04/26(金) 14:38:58.61ID:xEyS3kHo
>>85
オレも最初の頃壊れ(し)まくって、Accessなんて使いもんにならんやんと思った
dbだから、排他とかできるんだし、別々のフォーム触るなら、皆で開発できるやろと 1つの共有mdbで開発やってたw

規模によるけどシステム分離はわざわざしないな
分離するのは、sqlserverとかにするときだけだ

87デフォルトの名無しさん2019/04/28(日) 22:30:01.14ID:h9q8OTE0
システム分離ってなんですか?
私もファイルが壊れてばかりで困ってます。

88デフォルトの名無しさん2019/04/29(月) 11:11:13.24ID:3KqibFAl
>>87
データベースでデ−タをどうこうする部分と、デ−タそのものを分離するということでしょ。

テーブルとクエリやフォーム、レポートを別ファイルにするという意味だと思う。

89デフォルトの名無しさん2019/04/29(月) 11:33:05.46ID:lr8PSWgy
>>87
>>88
テーブルとそれ以外に分けることです。
それ以外の方にはリンクテーブルを置いておけば、同じように処理できます。
複数人で同時にテーブル読み書きするときは定番のやり方です。
(一人でしか使わないなら、わざわざ分ける必要はありません)
テーブルの方はファイルサーバに、その他は各ローカルに置いて使います。

もう少し細かく言うと、ワークテーブルはそれ以外の方に含みます。

90デフォルトの名無しさん2019/04/29(月) 11:38:37.49ID:d82tlvl6
>>89
横からすんみません。
一人でしか使わない場合もフォームのコントロールを弄くるのが好きな人は分離した方が良いと思います。
コマンドボタンの位置を変更しただけでフォームが消えてしまったことが何度もありますから、
一人で使用する場合もカスタマイズ好きならデーターは分離した方がいいと思います。

91892019/04/29(月) 11:43:25.91ID:lr8PSWgy
>>89
ネットワークが遅い場合は、定数テーブルもローカルにとか、その辺は臨機応変に。

92892019/04/29(月) 12:16:08.84ID:lr8PSWgy
>>90
最近は個人的な作成しかしなくなったので教えて下さい。
そのファイルはmdb、accdbどちらですか?
(拡張子が変わって壊れにくくなったかとか、何が変わってどう影響するか細かくは調べてないです)
そのdbファイルはローカル/ファイルサーバどちらに置いてましたか?

ここ数年はツール的な小さなものを、accdbをローカルで作成してますが、壊れた経験はないです。
1つのフォーム内で、各処理をフレームで分けてあり、フレーム内にはテキストボックスやボタンなどがあります。
フレーム単位で、あっちやこっちに頻繁に移動はしてます。
(それでも、過去の壊れてた経験から、数日に一回最適化とバックアップはとってます)

93デフォルトの名無しさん2019/04/29(月) 12:36:13.73ID:d82tlvl6
>>92
mdbです。dbファイルもmdbでローカルです。
フロントエンド?(と言っていいのかしら?)が巨大で、100MBくらいあります。
業務用ソフトで中身は使用されていないゴミ変数やゴミプロシジャーが大量にあります。空のプロシジャーもある上に、それをcallしている謎のプロシジャーもあります。
str型の変数なのに、タイプするのが面倒くさかったのか、var型で宣言されている変数がこれまた大量にあります。

94892019/04/29(月) 13:14:19.98ID:lr8PSWgy
>>93
ありがとうございます。
今でもmdbで作り込みが大きいのは壊れやすいんですね。
以前は、新mdbに全部インポートして、リフレッシュ(ゴミ除去)とかやってました。
(最適化より小さくなるから、何か効果はあるんじゃないかと思って。)

accdbに全部インポートして、参照設定修正という方法もあるけど、業務用だと完全に同じ動きするかと問われると保証できないので、難しいだろうし。
時間やお金出るなら(これからも使い続けるなら)、機能(部署)ごとに分割とか、accdbに徐々に移行(プロシージャ修正整理)とかやっていきたいところですね。

95デフォルトの名無しさん2019/04/29(月) 13:47:50.96ID:QxflDRVF
SQLserver使おうぜ

96デフォルトの名無しさん2019/05/04(土) 18:38:16.45ID:ZGbBU4Ge
Accessはフロントエンドに使う
DBはMySQLでも良い

97デフォルトの名無しさん2019/05/05(日) 01:45:20.23ID:PgstIp0W
一度に大量で複雑な更新をすると落ちやすかった印象は有るかなぁ

98デフォルトの名無しさん2019/05/07(火) 11:01:49.04ID:S4maxKz5
>>96
帳票とかからむと、手軽だもんな

99デフォルトの名無しさん2019/05/08(水) 19:00:39.16ID:PD4Nn61H
Accessは何たって帳票の作成が超簡単!
これがあるから離れなれない。
LibreOfficeやOpenOfficeにも帳票作成ツールはあるけど、
Accessほど使い易くはないのが、移行できずにいる大きな要因の一つなのは間違いない。

100デフォルトの名無しさん2019/05/11(土) 13:23:24.99ID:J8lUk67b
Office365でアプリアイコンが刷新されたがAccessは変わらない悲しみ

101デフォルトの名無しさん2019/06/03(月) 01:57:41.37ID:vn/O8vit
access2016使ってて2013のランタイム入れたらaccessが使えなくなってびびったわ
あわててシステムの復元して直ったけど

102デフォルトの名無しさん2019/07/17(水) 21:40:08.49ID:/Hg4fKFx
サブフォームのソースオブジェクトに、SQLを直接記入することはできないのでしょうか?
SQL文というものがそもそもオブジェクトでないから記入できないのでしょうか?

103デフォルトの名無しさん2019/07/17(水) 22:16:32.17ID:5Qt+TnNF
Formのオープン時にそのサブフォームのおソースを放り込めばできる
あとはメインフォーム上でサブフォームをいぢるイベント時に書くとか 例えばボタン押した時など
サブフォームはソース無し にしてるけど、自分は  そこへ放り込むやり方だと出来てる

104デフォルトの名無しさん2019/07/17(水) 22:25:51.54ID:eXUk1Aqq
>>102
ビュー定義してソースに設定したら?

105デフォルトの名無しさん2019/09/28(土) 01:30:49.78ID:XSiAgIby
id  部門 販売品目
1  A  りんご
2  A  バナナ
3  A  りんご
4  B  バナナ
5  B  ぶどう
6  B  ぶどう
というテーブルから、
部署と販売品目が同じレコード数
(Aかつりんご、Aかつバナナ、Bかつバナナ、Bかつぶどう の数)をカウントしたいのですがうまくいきません。

販売品目単独では
SELECT 販売品目,Count(id)
FROM テーブル名
GROUP BY 販売品目
のようにすれば思うようにいくのですが、複数条件になると思うようにいきません。
お知恵を貸していただけないでしょうか。

106デフォルトの名無しさん2019/09/28(土) 02:03:10.80ID:hdiBTyMe
SELECT 部門, 販売品目, Count(ID) AS IDカウント
FROM テーブル1
GROUP BY 部門, 販売品目
HAVING (((部門)="A") AND ((販売品目)="りんご")
OR ((部門)="A") AND ((販売品目)="バナナ")
OR ((部門)="B") AND ((販売品目)="バナナ")
OR ((部門)="B") AND ((販売品目)="ぶどう")) ;

107デフォルトの名無しさん2019/09/28(土) 02:08:15.90ID:hdiBTyMe
もしくは
SELECT 部門, 販売品目, Count(ID) AS IDのカウント
FROM (
SELECT * FROM テーブル1 WHERE (((部門)="A") AND ((販売品目)="りんご")
OR ((部門)="A") AND ((販売品目)="バナナ")
OR ((部門)="B") AND ((販売品目)="バナナ")
OR ((部門)="B") AND ((販売品目)="ぶどう"))
) GROUP BY 部門, 販売品目

108デフォルトの名無しさん2019/09/28(土) 02:22:14.79ID:hdiBTyMe
//シンプルにこれでもできたけどwhereの位置とか括弧とか間違えてない?
select 部門, 販売品目, count(ID) as カウント
from テーブル1
where (((部門)="A") AND ((販売品目)="りんご")
OR ((部門)="A") AND ((販売品目)="バナナ")
OR ((部門)="B") AND ((販売品目)="バナナ")
OR ((部門)="B") AND ((販売品目)="ぶどう"))
group by 部門, 販売品目

109デフォルトの名無しさん2019/09/28(土) 06:33:14.21ID:XSiAgIby
>>106
ありごとうごぞいます。
説明が不十分でした。
たしかにそのとうり記述すればできるのですが、部門や販売品目が増えていった場合に、全組合せを書き出さないでやる方法はないものかと考えております。

110デフォルトの名無しさん2019/09/28(土) 09:36:23.69ID:hdiBTyMe
まだ説明不足かと
組み合わせを指定しないと絞り込みはできないし
クエリビルダーでちゃちゃっと作った最小形が>>106
絞り込み条件のテーブルを他に作ってリレーションとる方法もあるけど

111デフォルトの名無しさん2019/09/28(土) 21:47:53.70ID:w31BDneZ
>>105
要件定義すらまともに書けない馬鹿だからSQLの基本もわかっていないのかね?
どこにも部署なんてないのだが

112デフォルトの名無しさん2019/09/28(土) 23:50:31.47ID:Bvcc+55+
Ruby なら、

require 'csv'

str = <<"EOT"
id 部門 販売品目
1 A りんご
2 A バナナ
3 A りんご
4 B バナナ
5 B ぶどう
6 B ぶどう
EOT

# 空白区切りで、ヘッダー有り
options = { :headers => true, :col_sep => " " }

# Hash.new で、初期値は、{ }
hash = CSV.parse( str, options ).each_with_object( Hash.new { |h,k| h[ k ] = { } } ) do | row, hash |
dep = row[ '部門' ] # department
item = row[ '販売品目' ]

if hash.dig( dep, item ) # Ruby 2.3 から
hash[ dep ][ item ] += 1
else
hash[ dep ][ item ] = 1
end
end

p hash
#=> {"A"=>{"りんご"=>2, "バナナ"=>1}, "B"=>{"バナナ"=>1, "ぶどう"=>2}}

113デフォルトの名無しさん2019/09/29(日) 07:32:11.18ID:V4rAOO4u
>>111
いきってないで答えてやれよヴァカw

114デフォルトの名無しさん2019/09/29(日) 09:35:48.11ID:l54OkWQk
AccessならGurupByしたクエリを名前を付けて保存しておくのが正解
サブクエ遅いから

115デフォルトの名無しさん2019/09/29(日) 19:47:04.97ID:mdCYdpYZ
普通に部門販売品目でソートしてから
dynasetからvbaでカウントしたら駄目なの?
sql文を捏ね繰り回すよりその方が簡単な気がするけど?

116デフォルトの名無しさん2019/09/30(月) 00:02:54.58ID:ELYMfL9+
質問者が一番馬鹿だが答える方も馬鹿ばっか

117デフォルトの名無しさん2019/09/30(月) 00:24:58.55ID:K8zar7Eh
なのでこのカウントの質問、ここで終了!

118デフォルトの名無しさん2019/09/30(月) 10:47:04.29ID:6yDcPDBq
どうしてもsql文でやりたいなら
他のsql系統のスレで聞いたほうが良いと思う
accessはsqlとvbaを組み合わせて使えるので
込み入り難いからやり易い面が有る
自分は割りとそういうやり方をしてしまう
けど他のリレーショナルデータベースはsqlを駆使しないといけない場面が多いだろうから
その手の方面の人の方がsql文に詳しい人が多いと思う
sql文の質問をしても構わないと自分は思うけど一応vbaスレなんで

119デフォルトの名無しさん2019/09/30(月) 23:29:21.37ID:GbU6Rrgw
他のリレーショナルデータベースはもっとましな言語で使うんだよ

120デフォルトの名無しさん2019/10/05(土) 14:25:32.14ID:pEFp3YWl
""とclearcontentsの違いが明らかになったな

121デフォルトの名無しさん2019/10/05(土) 14:25:47.70ID:pEFp3YWl
誤爆です

122デフォルトの名無しさん2019/10/22(火) 14:54:31.07ID:Si05vw2X
俺なら
SELECT [部門] & [果実] AS 式1, Count("HOGE") AS DUMMY
FROM テーブル1
GROUP BY [部門] & [果実];

123デフォルトの名無しさん2019/10/30(水) 06:50:33.11ID:q0119UkA
普通の関数を使ったSQLがコンパイルエラーで通らなくなるのは、ずっとあるバグなの?
文字列中に含まれるスペースをなくした列同士を比較したいだけなのに

124デフォルトの名無しさん2019/10/30(水) 08:05:14.44ID:QrHO4Al6
DBに上げる前のデータ加工はExcelとPowerBIについてくるPowerQueryで完結させる
DB自体は何でも良い
Accessはフロントエンド

こういう感じの運用が一番融通が利いて楽

125デフォルトの名無しさん2019/10/31(木) 14:53:16.10ID:3aW6/Vt0
>>123
通ってたのが通らなくなったなら参照設定確認が最初の一歩

126デフォルトの名無しさん2019/10/31(木) 16:05:52.19ID:IlVblaPX
optionala argumentについて教えてください。
https://tsware.jp/tips/tips_119.htm では 引数を Optional かつ バリアント型で宣言する と書いてありますが、
総本山の https://docs.microsoft.com/ja-jp/office/vba/language/concepts/getting-started/understanding-named-arguments-and-optional-arguments では
あっさりと string型 で宣言しています。どっちが正しいのでしょうか?

それと、プロパティーシートから 関数を呼び出すときに引数を省略できますか?エラーばっかり出てしまうので,不可能という気がしてきますが、実際はどうでしょうか?

127デフォルトの名無しさん2019/10/31(木) 16:14:24.18ID:IlVblaPX
ひとつ解決しました。
ここ https://bettersolutions.com/vba/macros/optional-arguments.htm に Remember that IsMissing will only work with the Variant datatype. と書いてあるので、
IsMissingを使いたい場合にvariant型である必要があるだと思います。

プロパティーシートからcallするときに省略可能かどうかはまだわかりませんね。

128デフォルトの名無しさん2019/10/31(木) 23:30:26.82ID:IK0T1jez
>>127
プロパティシートからでも省略できると思うよ
標準で使える関数でも省略できるから

129デフォルトの名無しさん2019/11/06(水) 06:37:50.98ID:jiZZUv+M
IsNumeric 関数 VBA http://vba-auto.com/isnumeric_function_vba/

9CF

130デフォルトの名無しさん2019/11/06(水) 06:37:51.02ID:jiZZUv+M
IsNumeric 関数 VBA http://vba-auto.com/isnumeric_function_vba/

9CF

131デフォルトの名無しさん2019/11/12(火) 08:08:27.20ID:n8VUgOjj
スレチですまん。
俺はVBAをやってるが上司から言われました。(うちの部署、10名のうち、VBAを作れる人は二人だけ、、、)

AIが集計をしてくれるからEXCELは必要ない時代が来るねと言ってた。

反論出来る?

132デフォルトの名無しさん2019/11/12(火) 09:07:34.81ID:umlGYBnb
高度なAIにVBAとか集計なんかやらせちゃ駄目だ。他に何もできない俺たちがやらなきゃな

133デフォルトの名無しさん2019/11/12(火) 10:13:03.38ID:n8VUgOjj
>>131の者です。
EXCELとACCESSを間違えた、、、。
すみません。

134デフォルトの名無しさん2019/11/12(火) 18:47:25.82ID:ZiPBwNA/
ここって禿げのおっさん来てるの?

135デフォルトの名無しさん2019/11/12(火) 21:13:04.29ID:hnHZ9bm+
>>131
〉AIが集計をしてくれるからACCESSは必要ない時代が来るねと言ってた。

来ませんけど、未来のことなので証明はできません
なので、その理由を何かをしないことに最大限反論に活用するのが最も有効です

私がプログラムを始めた数十年前から、「コンピュータが発達したらプログラマーはいらなくなる」と言われていましたが、今でも慢性的に不足してますし、更には小学校(?)からプログラムを教えると

ちなみに自社でai使うことになっても、おそらく数百万円かかって、大して使い物にならないでしょう
ITに詳しくない人は、知識もないのに夢見過ぎです

複数データを組み合わせてサクッと結果求めたり、そこそこのアプリ(特にレポート活用)作るなら、今でもACCESSは最良の選択の一つだと思ってます。2.0くらいから今までそこかしこで使いまくってます

136デフォルトの名無しさん2019/11/17(日) 21:57:31.66ID:qBLyum9y
エクセルに比べて、アクセスは過疎ってるなあ

137デフォルトの名無しさん2019/11/18(月) 09:09:41.09ID:8BxAA3e8
あなたの禿にacc(ry

138デフォルトの名無しさん2019/12/19(木) 22:11:03.53ID:lRu+t2VS
Access2010
印刷プレビューのリボンで「PDFまたはXPS」を押した際に出てくる
「PDFまたはXPS形式で発行」のダイアログを出すVBAコード教えてください。

139デフォルトの名無しさん2019/12/20(金) 21:12:19.28ID:NX/gzbot
とりあえず自分でマクロの記録でそれらの操作をなぞって
それでできたブツを思う存分手直しして
そこで発生した問題を質問した方がいいかもな

Access遣いはおばーちゃんやおじーちゃん多いから
「イチからかよ」って思われると、誰も面倒がって答えたがらない

140デフォルトの名無しさん2020/01/25(土) 09:08:10.81ID:Ib3xGLkp
Windows10、Office365のAccess16なんだけど、レポートプレビュー画面にボタンでもおいて、そこにイベントプロシジャーを設定したいんだけど、どうするのかな?
Access2003では簡単にできたんだけど、リボンがでてきたAccess2007以降出来なくなった気がするんだけど、どうなんだろう?

141デフォルトの名無しさん2020/01/25(土) 10:20:39.11ID:lx4KYteI
あなたのハゲにサクセスしたい

142デフォルトの名無しさん2020/01/25(土) 23:41:49.05ID:Tl89GTzc
>>140
ちょっと2003でそれをやるコード上げてみ

143デフォルトの名無しさん2020/01/26(日) 13:49:02.85ID:63OckB6o
>>142
確か、カスタムメニューだったか、カスタムボタンを設定して、それにイベントプロシジャーを設定していた気がする。
アクセスキーを設定してプレビューを印刷して、プレビュー画面を閉じて、特定のフォームを起動して、特定のボタンやらテキストボックスにフォーカスを与えるとかやっていた気がする。
あれは実に便利だった。
Windows7が動いているPCが物置にあった気がするから確かめてみる。

144デフォルトの名無しさん2020/02/06(木) 19:57:45.45ID:djhx8w46
会社で役割柄ツールを作ることになりまして、アクセスに入門しました
xlsxをインポート、それと同時にテーブルを作成するVBAは組めたのですが、同時にレコードが勝手にソートされてしまい、元データとレコードの順番が異なってしまうという問題に直面しています。
この場合、テーブル作成と同時にオートナンバーを設定するようにしたいのですが、docmd〜acimportdelimでは定義付けができません。
何か方法はありますでしょうか

インポートするxlsxは毎回ファイル名が異なる想定なので、保存したインポートを使うのは極力避けたいです

145デフォルトの名無しさん2020/02/06(木) 22:52:24.69ID:BV2yIT+0
>>144
元データに順序列付けとき

1461442020/02/07(金) 06:55:52.14ID:uUICGF6D
>>145
そうですよね…
最終手段としてはそれを考えています

1471442020/02/07(金) 06:56:12.50ID:uUICGF6D
ありがとうございます!

148デフォルトの名無しさん2020/02/07(金) 12:31:07.76ID:etaMDs5Y
>>146
最終手段というか、RDBの行の順序に意味を持たしちゃ行けないと言う基本理念

149デフォルトの名無しさん2020/02/09(日) 18:52:02.04ID:ISiAk6Az
あなたのハゲにサクセスしたい

150デフォルトの名無しさん2020/05/03(日) 05:34:51.92ID:oxUHZhz1
おはようございました
新型コロナでACCESSどころでは無いですね

151デフォルトの名無しさん2020/05/23(土) 05:21:27.38ID:GBVQ4WJe
jetbeensのDataGripってアクセスでも使えるの?

152デフォルトの名無しさん2020/05/24(日) 14:56:41.74ID:nvA4FLS/
>>151
jetbrainsでしょ

153デフォルトの名無しさん2020/05/24(日) 14:58:32.86ID:nvA4FLS/

154デフォルトの名無しさん2020/06/12(金) 10:16:26.06ID:wVr6YfiN
全然ネットにもあがっていないけれど、Access2019の最新版で、DAOでレコードセットを作成して操作しようとすると
Accesが落ちるっていう現象を経験している人っていませんか?
32ビット版も64ビット版も同じ。

155デフォルトの名無しさん2020/06/13(土) 00:26:56.61ID:0QXppYe5
Excelが2013というオチではなくて?

156デフォルトの名無しさん2020/06/13(土) 23:26:59.26ID:qOp00dJL
そうでなくて、今まで動いていたのに最新のビルドになったら突然落ちるようになった。
前のビルと番号に戻したら動くのよ。
ADOでレコードセットを作成したときはどのビルド番号でも問題なし。

157デフォルトの名無しさん2020/06/19(金) 09:37:07.67ID:N2hJl/gn
Application.SetOptionの引数一覧が知りたいのですが、誰か知りませんか

158デフォルトの名無しさん2020/07/31(金) 18:27:45.20ID:2hxJK6g2
ヘルプデスクがスキルアップするため、プログラミング経験積むのにAccessVBAって合ってますか?

159デフォルトの名無しさん2020/07/31(金) 18:46:19.97ID:z2KmuaKZ
まずヘルプデスクという職場でプログラミング経験積めるの?

160デフォルトの名無しさん2020/08/01(土) 22:26:21.99ID:kuObS2ra
合ってるかどうかはわからんけど、それはありだな。
DBとPG、両方の知識が増える。

161デフォルトの名無しさん2020/08/02(日) 01:27:11.88ID:S6RTQlHT
お前らどうやって勉強したの?
おいらADO勉強したいけどどの本読んでいいかわからないから勉強できてない。

162デフォルトの名無しさん2020/08/02(日) 04:08:31.99ID:dor5CoCv
覚えるなら実務が一番早いと思いますが
独学なら簡単なものを作ってみると良いですよ
持ち物リストとか

163デフォルトの名無しさん2020/08/04(火) 22:22:12.96ID:j2qbL1qD
持ち物リストですか、わかりました

164デフォルトの名無しさん2020/08/07(金) 09:09:10.88ID:QUQQ3BC/
>>161
Google。
本で勉強したのは20年前かな。

165デフォルトの名無しさん2020/10/10(土) 13:55:25.74ID:aicjgH/E
最近のAccessは条件付き書式の条件数が3つまでという制限がなくなったと聞いて、vbaで4つ条件を書いたら、怒られた。
条件数の上限の件はどうなっているの?

166デフォルトの名無しさん2020/10/12(月) 19:42:49.57ID:SLKy4GhN
https://hamachan.info/win8/access/and.html#st-toc-h-3
なんだろ?もっかい見直してみ

167デフォルトの名無しさん2020/10/12(月) 20:44:51.07ID:XW9upEZ9
>>166
こんなことがかいてありましたね。
>>参考Access2010以降は、条件付き書式を3つ以上追加することができます。Access2007では、3つまでです。

もしかしたら、メニューからなら可能でVBAでは不可能なのかもしれませんね。そうだとしたら変な仕様ですね。

168デフォルトの名無しさん2020/10/12(月) 22:03:49.00ID:SLKy4GhN
不可能とみるか、未対応と思うか 人それぞれ
クレバーなら文句を付けてるヒマ有ったら今できるベストな対応をして次に進んでる

169デフォルトの名無しさん2020/10/12(月) 22:18:07.44ID:XW9upEZ9
おお、AccessとかVBAを勉強し始めた頃を思い出しますね。
ネットで誰かが質問すると必ず上から目線で罵詈雑言だったなあ。
知恵袋とかも酷かったなあ。

170デフォルトの名無しさん2020/10/13(火) 20:22:52.03ID:Jo0My/9g
>そうだとしたら変な仕様ですね。
これが無かったら小言書かなかったけどな MS相手にどっちが上から目線なんだか
かてて加えて減らず口叩かれるとは いやはや

チラとWeb巡ったら難問袋小路問題で以前からあった疑問なのは判った
条件付き書式をVBAで制御するときに注意すること でググれば一番上に出てくるであろうサイトでは
2013をベースに「・・・すること」とか断言してるが、どうなんだ?
hatena さんのサイトでは別問題として画面がチラつくと仰ってる
そのサイトの途中にあるリンク先 ↓ (アドレス貼ると書き込みできないから省略
YU-TANG さんは既にアーカイブでしか見られないしVerも古いが
3つしかできないのを工夫で5つまで可能にしてる(らしい 詳細は未チェック)
そのサイトの最下段にあるリンク先 ↓ (ry
で、そこから誘導されたこちらもアーカイブなLebans 氏のサンプル(らしい 詳細は未チェック)
帳票フォームをサブクラス化して 云々 悪魔の技とYU-TANGさんは大絶賛してる
驚くことにアーカイブだがファイル落とせる

自分では必要に迫られたこと無かったから無頓着だったが、なるほどね みなさん悪戦苦闘してるんですね

171デフォルトの名無しさん2020/10/14(水) 02:48:02.48ID:zZVeC8zp
accessは質問者に小言を言う人が多い印象。
いわゆるIT土方が多いからかねえ。
余談だけど世間に流通している商品のVBAを覗くとひどいコードの多さに驚く。そういうコードを書く人が質問者相手にがストレス発散してる気がするなあ。

172デフォルトの名無しさん2020/10/20(火) 06:46:57.60ID:RpHsdUuc
ACCESSは後継者が少ないから先輩面したくても出来ないって人が多いのでは。
私も後輩が欲しい。育成では無く先輩面目的で(だからダメなんだろうね)。

173デフォルトの名無しさん2020/10/23(金) 06:48:31.50ID:LIFEWQB+
Access2016を使っています
VBAを使いcsvファイルを取り込もうとしているのですが取り込み先のファイルの名前全てにピリオドが入っており、例1333.T.csv ピリオドが邪魔でファイル名を指定してもうまく取り込めません
何か良いアイデアはないでしょうか?

174デフォルトの名無しさん2020/10/23(金) 17:06:19.46ID:jTOWYlOX
csvファイルに名前付けのルールとかがあって、規則性があるなら Left Mid Right
辺りを交えて工夫  全く一貫性が無いとかなら . を ppp とかにリネームする工夫
https://soudan1.biglobe.ne.jp/qa2877385.html  ←これってこと?
http://tsware.seesaa.net/article/214574472.html ←ここにもヒントが

175デフォルトの名無しさん2020/10/24(土) 06:13:20.49ID:3Br09s+m
>>173
私はファイル選択、コピー、インポート、コピーしたファイルの削除、と言う手順でデータを取り込んでます。

1761732020/10/24(土) 23:19:53.94ID:s9oXa8gi
>>174
ありがとうございます
ファイル名は規則性があるのでLeft Mid Rightを使ってドットをスルーして取り込みをするやり方を探してみます
>>175
こちらはファイルコピーをしてドットのない名前に変換してからインポートといった感じでしょうか初心者すぎてまだ色々理解できていないですが道筋がみえましたありがとうございます

177デフォルトの名無しさん2020/11/21(土) 02:09:02.77ID:OkL4O3GG
ACCESS365?でadoの話。
昨日、テーブルメンテナンス用にプログラム書いて、テストでupdateメソッド行をコメントアウトして実行したのにレコードが更新されて焦った。幸い意図した通りの更新が出来たので問題は無かったのだが、こんな事有る?

178デフォルトの名無しさん2020/11/21(土) 19:58:38.03ID:4nufVV0K
通常ではあり得ない動作ですから
accdbが破損しているか
思い違いしているか
じゃないですかねぇ

179デフォルトの名無しさん2020/11/22(日) 23:10:13.61ID:DuDUZZqW
だよね、自分の事じゃなければ私もそう思う。明後日に追試してみます。

180デフォルトの名無しさん2020/11/25(水) 18:43:23.08ID:q3XRT9ff
>177
ADOだと、Updateメソッド実行しなくてもレコードが保存される条件があったはず

https://docs.microsoft.com/ja-jp/office/client-developer/access/desktop-database-reference/update-method-ado
>Update メソッドを呼び出すより前に追加中または編集中のレコードから移動すると、ADO によって自動的に Update が呼び出されて変更内容が保存されます。

181デフォルトの名無しさん2020/11/26(木) 22:16:38.24ID:jD11+CM5
>>180
これか、ありがとう。
だとしたらupdateメソッド要らなくね?よく分からんが。

182デフォルトの名無しさん2020/11/27(金) 16:20:14.12ID:j3fR6c+j
レコード移動しないけど変更を保存したいときに必要だろう

183デフォルトの名無しさん2020/11/29(日) 20:06:15.16ID:k+jvWZ30
>>182
それはそうね

184デフォルトの名無しさん2021/01/11(月) 16:27:04.20ID:HFGgd7VU
ACCESSのSQLでビット比較ってどうすればいいですか
(value & 0x10) == 0x10 みたいに特定のビットが立ってるか比較したいのですが

185デフォルトの名無しさん2021/01/11(月) 17:56:37.60ID:qzYYjSUA
できるかわかりませんが、
(value and &H10) = &H10
だとダメですか?

186デフォルトの名無しさん2021/01/12(火) 19:10:42.78ID:f1Ulh51r
>>185
試してみます、ありがとうございます

187デフォルトの名無しさん2021/01/12(火) 19:16:56.91ID:f1Ulh51r
ダメでした
andを&に変えてもダメでした

1881852021/01/12(火) 19:30:22.83ID:sGnBc5NV
そっか、SQLのAND演算子になっちゃうのか… &も文字列の結合演算子とみなされちゃうのかな?

&H10のビット限定なら、
(value \ 16) MOD 2
でいけそうですが、他にもパターンがあるでしょうから…

1891852021/01/12(火) 19:34:25.38ID:sGnBc5NV
何より分かりにくいですねw
整数除算(\)で該当のビット位置を一番右にずらして、MODでそのビットを取り出します

1901852021/01/12(火) 19:49:06.45ID:sGnBc5NV
16 じゃなくて &H10 と書く方が取り出すビットと一緒で分かりやすいですね(うまくゆくかはわかりませんが)

(value \ &H10) MOD 2

1911852021/01/13(水) 02:15:13.93ID:+GyFVgd4
連投すみません
188案は value が long型だとして、値が負数のとき正しい結果にならないことがあります
ごめんなさい

192デフォルトの名無しさん2021/01/13(水) 17:32:20.96ID:Mb95xbD5
>>188-191
親切にありがとうございます。
\とか使えるのは知りませんでした。
試してみます

193デフォルトの名無しさん2021/01/13(水) 17:50:48.61ID:+yZZ5ziS
Windows10、Access365です。

Excelファイル上のデータに対して、ADOでアクセスして、データを取り込んでいるのですが、時間がかかります。
時間を短縮する方法はないでしょうか。

データは1ヶ月分9万件程度ですが、Accessのテーブルに取り込むのに、7分程度かかります。

テーブルのレコードの追加は、データ1件1件に対して、ADOのAddNewメソッド、Updateメソッドで追加しています。

試しに手動でAccessのインポート機能を使用して1ヶ月分のデータを取り込んでみたのですが、時間はかからなかったのですが、F20、F21など、空白の列まで要求されました。
そのためこの手段はあまり良くないと思っています。

レコードセットを一気にInsertする方法とかないでしょうか。
よろしくお願いします。

194デフォルトの名無しさん2021/01/14(木) 01:33:57.64ID:yNTWs1ET
一件一件Updateするんじゃなくて、UpdateBatchでバッチ更新してみるとか

195デフォルトの名無しさん2021/01/14(木) 01:41:15.38ID:yNTWs1ET
>>187
ふつうに>>185でできるはずだけど

valueの型が数値じゃないんじゃ?

196デフォルトの名無しさん2021/01/14(木) 03:34:32.57ID:eeXKDacn
>>193
レコードセットで要求の動作はできないと思われます
以下はレコードセットを使わない方法になります
前提として
・現在取込時にレコードセットを編集していない
・SQL が書ける

INSERT 文で
・「IN 句」に Excel ファイルを指定
・追加先テーブルに Access テーブルを指定
これでインポートと同等のパフォーマンスになると思います

詳細は MS のリファレンスを参照
https://docs.microsoft.com/ja-jp/office/vba/access/concepts/miscellaneous/in-clause-microsoft-access-sql
今(.xlsx)だと EXCEL 12.0 になります

197デフォルトの名無しさん2021/01/14(木) 05:18:36.84ID:ecyWCD0F
知恵袋はあてにならんくて

198デフォルトの名無しさん2021/01/14(木) 12:53:46.92ID:kpvbRWbL
>>196
ありがとうございます
試しに1行をInsertしてみたところ、3分程度で処理できました。
ただ、.AddNewの方も、同じデータで3分-7分のくらいで処理できたので、思ったよりも処理速度は改善しませんでした。
あと、Nullだけのレコードが入ってしまうことも難点でした。

取り込みたいデータを取り込めたのと、列が30列くらいあり書き換えに時間がかかるので、一旦は今のままでいこうと思います。

ただ、今後も同じようなデータの取り込みがありそうです。
他に効率的なデータ入れ込み方法がありましたら、お教えいただけると幸いです。

199デフォルトの名無しさん2021/01/14(木) 16:43:18.02ID:eeXKDacn
>>198
ループ中の AddNew を SQL の INSERT に置き換えたのでしょうか?
インポート対象(9万件程度)を1度の INSERT で行います
Null レコードは Where で除外可能かと思います

現実的なのは SQL 直発行かインポート機能の2択かと思います
インポート機能も定義を固めれば使い物になります

効率というのは人によって変わります
普段からコードに触れている人なら VBA からの SQL 発行が効率的
コードは書かないが Access を使い慣れている人ならインポート機能やクエリ定義が効率的
両者の方法とも取り込み実行時間はほぼ同じです

200デフォルトの名無しさん2021/01/14(木) 18:14:16.61ID:EmIfgllR
>199
いえ、INSERT SELECTからの列指定をして一気に入れ込みました。実験的に1列のみを。

インポート機能とSQLでの処理は速度が違う気がするのですが本当でしょうか?
テーブルへの書き込み方が根本的に異なるような気がします。

DoCmd.TransferSpreadsheet はぜひ使えるようになっておきたいですね。
エラーがよくわからないので今まで使っていませんでした。

201デフォルトの名無しさん2021/01/14(木) 21:01:21.37ID:yNTWs1ET
>>200
全体で1トランザクションになるようにトランザクション張るか
UpdateBatchで更新するか試してみてくれ

202デフォルトの名無しさん2021/01/14(木) 23:19:32.20ID:KOTB1sbE

203デフォルトの名無しさん2021/01/15(金) 12:06:52.83ID:Z+pTsb/B
>>199
もう一度SQLでやってみたところ、インポートと同じ時間で処理できました。
ありがとうございます

>>201
UpdateBatchでは処理時間に違いがありませんでした
レコードセットへの書き込みに時間がかかっているのかもしれません。
ありがとうございます

204デフォルトの名無しさん2021/01/16(土) 21:45:45.19ID:wM/4uvwh
>>161
資格をモチベにしてる

205デフォルトの名無しさん2021/01/26(火) 12:20:07.19ID:pY3ojVqI
ウチの社内の情報システムの制限でwindowsカメラアプリが制限されてるんだけど、VBAで無理矢理動かせないだろうか、、、
いろいろ検索してみても古い情報しかなくて、、
64bit版でも出来るようなプログラムの見本とか有れば助かる。

206デフォルトの名無しさん2021/01/26(火) 12:31:00.16ID:bIVSUY/u
そんな事してバレたら懲戒処分にならない?

207デフォルトの名無しさん2021/01/26(火) 21:32:09.76ID:0moyOenU
>>206
少し言い方が悪かったかな。

端末でWEB会議してるから、カメラを使うのは問題無いんだけど、静止画を撮るソフトが入っていないもんで、静止画を撮ってDBと紐づけたいってなると、できなくて。
小規模グループでAccess使ってるから、システムに相談しても本気でかけあってくれなくて、、
それだったらVBAでどうにかならないかと思って。

208デフォルトの名無しさん2021/01/26(火) 22:49:05.99ID:5iMVHv+0
>>207
より悪いんだけど

2092042021/01/27(水) 17:26:57.82ID:Nmg5vWMl
スタンダード受かった(^ω^)v

210デフォルトの名無しさん2021/01/29(金) 13:44:54.10ID:Xkyf+iIu
>>209
もめでとう!
資格は財産!
凄いなスタンダードは

211デフォルトの名無しさん2021/01/29(金) 16:32:16.97ID:SG5MocSx
>>210
ありがとう。マイナー資格のせいか、
テキストは悪評にも関わらず他に選択肢ないし、
そのテキストもアプリもやたら高いけど、
一発合格のために全部ちゃんと買ったわー。

212デフォルトの名無しさん2021/01/31(日) 10:42:42.16ID:/4jghnKY
VB自体マイナーよりなのがね。。。
参考書の著者は名のある人(武藤玄さん?)だから安心でしょ

213デフォルトの名無しさん2021/02/01(月) 19:30:44.14ID:JChayj2G
「課題テーブル」 の項目「ファイル:添付ファイル型(拡張子は.xlsx)」をSQLで取得して(1)、
そのファイル名を変更して保存(2)しようと思っています。
(2)の処理は問題ないのですが、肝心な(1)の処理が分かりません
SQLだと以下のような感じかと思うですが、これだと、「ファイル」の名称も取得すらできないようです。
なにかしらヒントをいただけないでしょうか。
検索にヒットするようなキーワードでもかまいません。
よろしくお願いいたします。
"SELECT ファイル  FROM 課題テーブル where ID = 1" (件数は1件)

214デフォルトの名無しさん2021/02/01(月) 20:47:30.12ID:g0s2XOHS
ファイルを取り出したいのか、ファイル名を変えたいだけなのか、何がしたいのかがわからない。

215デフォルトの名無しさん2021/02/01(月) 20:48:57.97ID:g0s2XOHS
ファイルをSELECTするとファイルが出てくるというのは奇妙な発想だな

216デフォルトの名無しさん2021/02/01(月) 20:52:05.66ID:1CLvOTQ1
>>214
ファイルを取り出したいんだけど、
SQLでなくクエリーでやるべきなの?
先日Access始めたから見様見真似。

添付ファイルを取得すれば、renameして保存するところはわかるんだけど。

217デフォルトの名無しさん2021/02/01(月) 20:58:59.00ID:90ziZ1xl
エクセルファイルはAccessには入ってないだろ
フォルダから取り出すのか?

218デフォルトの名無しさん2021/02/01(月) 20:59:30.52ID:90ziZ1xl
何がしたいのかマジで分からんw

219デフォルトの名無しさん2021/02/01(月) 20:59:46.61ID:1CLvOTQ1
Accessのテーブルの添付ファイル型の項目に入っている

220デフォルトの名無しさん2021/02/01(月) 21:01:37.65ID:90ziZ1xl
そのアドレスをエクセルで開いてリネーム保存すればいいじゃん

221デフォルトの名無しさん2021/02/01(月) 21:03:39.26ID:90ziZ1xl
Dim MyExcel As New Excel.Application

とか使って

222デフォルトの名無しさん2021/02/01(月) 21:12:34.68ID:1CLvOTQ1
>>221
それ使ってるんですけど添付ファイル型ってchar型とかと同じように扱えれるんですかね、
よろしければもう少しヒントを。

223デフォルトの名無しさん2021/02/01(月) 21:22:03.72ID:1CLvOTQ1
ファイルをディスクのどこかに保存するのは、SaveToFile メソッドですかね?
なんか使えそうに思うけどいかがですか?

224デフォルトの名無しさん2021/02/01(月) 21:43:47.01ID:FgW8bRhe
そんな新しいAccessなんて持ってないから知らん

225デフォルトの名無しさん2021/02/01(月) 21:44:43.65ID:90ziZ1xl
https://oshiete.goo.ne.jp/qa/8167605.html

添付ファイル型はレコードセットになっていて
その中のフィールドのひとつ(3つ目。つまりF(2))がファイルネームになっていて、
それを取得する。らしい。

226デフォルトの名無しさん2021/02/01(月) 21:45:48.50ID:90ziZ1xl
>>223
普通にSaveAsじゃあかんの?

227デフォルトの名無しさん2021/02/01(月) 21:48:22.88ID:c76bdQcs
ありがとうございます。
少しヒントが得られたかも。
明日試してみます。

2282132021/02/02(火) 11:31:56.15ID:UTRQGX0/
添付ファイル型データのデータとファイル名取得が出来たので
参考に記載します。ありがとうございました。

http://www.proton.jp/main/windows/access-vba.html
(参考URL)添付ファイル型フィールドのファイルを開くには

コーディング抜粋
----------------------------------------------------------------
Dim SQL, fileName As String
Dim DB As DAO.Database
Dim RS,RS2 As DAO.Recordset

Set DB = CurrentDb
'なお、下記「フアイル」は「.xlsx」形式のデータ
SQL = "SELECT ファイル FROM テストテーブル where ID = 1 ; "
Set RS = DB.OpenRecordset(SQL)

'「ファイル」データ取得
Set RS2 = RS.Fields(0).Value

'「ファイル」データファイル名称取得
fileName = RS2.Fields("FileName").Value

------------------------------------------------------------------------------------

229デフォルトの名無しさん2021/02/02(火) 14:27:49.60ID:CQc47MX2
それ、SQLとRSは無駄にVariantになってないか?

230デフォルトの名無しさん2021/02/04(木) 15:46:42.10ID:QbGo6q9b
OLEオブジェクト型はどうやってSQL(select 文)で抽出するの?

231デフォルトの名無しさん2021/02/04(木) 20:11:15.64ID:XRB3PpKu
select文は普通に列名とテーブル指定するだけじゃないのか?
そっからどうやってデータ取得するかはどうやってDBアクセスしてるかによるんじゃね
とりあえずDAOかADOかとバージョンぐらい書け

232デフォルトの名無しさん2021/02/04(木) 20:23:44.53ID:w6PAg1HV
>>228
ファイルを取得したいと言っていたのに、ファイル内のデータでよかったのか?

233デフォルトの名無しさん2021/02/05(金) 00:26:34.08ID:OHtcWSU6
VBSでmdbに接続してaddnewしてupdateするだけの簡単なスクリプトの挙動がおかしい。

sub や Functionにして callすると成功するくせに、subじゃなくて素のスクリプトだと何もしない。
ちなみに読込みはどっちでも成功する。
なぜ、addnewのときだけ、プロシジャーである必要があるのだろうか?

234デフォルトの名無しさん2021/02/05(金) 00:34:27.19ID:OHtcWSU6
vbseditがおかしいらしい。
適当なディレクトリに保存して実行したら素のスクリプトでも成功した。
わけわらん。

2352302021/02/05(金) 10:13:06.16ID:s99X7duh
SELECT文でOLE型のファイル(拡張子.docx)を読み込んで保存しようとしています。
処理を行ったところ、「ファイル『temp.xls』は内容に問題があるため、開けませんでした。」という
メッセージが出ますが、「開いて修復」すれば元のファイルと同じに見えるので
SELECT文で項目だして、書き出すまである程度できているようなんですが、
どこがおかしいのでしょうか、ご意見をいただけたら幸いです。

参考サイト
https://www.moug.net/tech/acvba/0080032.html
画像を読み込む(GetChunkメソッド)

ソース一部抜粋

'OLE型用変数
Dim bytFile() As Byte
Dim nFileNo As Integer
Dim nSize As Long
Dim olename As String

Set DB = CurrentDb
    '項目「OLE型データテスト」抽出のSELECT文の実行
Set rs = DB.OpenRecordset(sqlText)

nSize = rs.Fields("OLE型データテスト").FieldSize
bytFile() = rs.Fields("OLE型データテスト").GetChunk(0, nSize)

nFileNo = FreeFile
Open "C:\Users\testuser\Documents\test.docx" For Binary As #nFileNo
Put #nFileNo, , bytImage()
Close #nFileNo

236デフォルトの名無しさん2021/02/05(金) 13:09:23.30ID:7kBPI4G7
VBS って、まだシステムで使えるのか?

保守されてる?

237デフォルトの名無しさん2021/02/06(土) 11:30:21.47ID:PohEB++t
bytImage() の中身は docx に直接上書き保存できるものなのか?

238デフォルトの名無しさん2021/02/07(日) 12:21:08.72ID:EDRo6Y49
>>236
Windows 10そのものがまだ使っています。

239デフォルトの名無しさん2021/02/26(金) 20:55:30.10ID:BHdQltm/
AccessからOracleに接続して、テーブル定義を取得しようとした場合、Currentdbにリンクテーブル作成してtabledefで取得するしかないですかね?

240デフォルトの名無しさん2021/02/26(金) 23:30:20.77ID:aSS4VuLP
>>239
そんな訳ないだろ
お前の頭には無理ってだけだ

241デフォルトの名無しさん2021/02/26(金) 23:38:57.64ID:JyNwBwDQ
>>240
どうやってやっているんですか?
そんなに人に偉そうにいうくらいならお詳しいんですよね?

242デフォルトの名無しさん2021/02/27(土) 00:39:35.09ID:lzDnqtNz
一応言っとくが、あわしろ氏は権威だぞ。

243デフォルトの名無しさん2021/02/27(土) 03:37:26.48ID:oWYDZ6ol
>>241
だからお前みたいな馬鹿には無理ってだけだ

244デフォルトの名無しさん2021/02/27(土) 09:00:35.16ID:kkUl7IkZ
わからないんだろ?
教えられないのに質問スレでマウント取って
かっこいいね!

245デフォルトの名無しさん2021/02/27(土) 13:52:55.39ID:oWYDZ6ol
馬鹿が聞き出そうとして必死だな
元の質問が、
「しかないですかね?」
だから、
「他にある。馬鹿にはわからないだけ」
これで完結

246デフォルトの名無しさん2021/03/12(金) 04:20:10.68ID:U5Mc6cIw
クライアントPC複数台にコピーしてあるaccdbの更新を自動化したいのですが、上手い方法が有ったらアドバイス下さい。
今は、終了時に更新版があればコピー専用のaccdbを開く、という方法です。
時々コピーに失敗したり、更新後の起動が出来なかったり、なんかスマートに出来ません。

247デフォルトの名無しさん2021/03/12(金) 07:03:59.49ID:bg4PRHHU
それぞれのPCに共有サーバーでクライアント各々に1つのものを使ってもらえば?

248デフォルトの名無しさん2021/03/12(金) 07:47:36.33ID:vZYfq0zb
え?

249デフォルトの名無しさん2021/03/12(金) 15:03:23.20ID:6lWZMdzy
>>247 コメントありがとうございます。

共有フォルダに置いたテーブルだけのバックエンドや、データベースサーバーにテーブルがあり、フロントエンドにリンクして使ってます。
各クライアントのフロントエンドを更新したいのです。
フロントエンドを共有フォルダに置いて皆んなで使うと壊れやすい、50台のクライアント全て閉じてもらわないと更新できないなどの問題があり、現在のかたちで運用しています。

250デフォルトの名無しさん2021/03/12(金) 16:26:24.53ID:ZUwUvURf
基本的には別ブログラム(Accessでなくてもいい)で上書きしてもらうしかないけど
タスクに登録して再起動してもらうとか

さがせばそれ用のツールとかありそうだけどな

251デフォルトの名無しさん2021/03/12(金) 18:43:58.19ID:6lWZMdzy
>>250
WSHで一日一回各クライアントで実行する例があったんですが、やってる事は同じなのです。なんかスマートな方法無いのかなあ。
もう少し探してみます。お騒がせしました。

252デフォルトの名無しさん2021/03/17(水) 08:24:13.18ID:o9MkZCaQ
他フォームや親フォームのコマンドを実行する時,
Call Forms!フォーム名.ボタン_Click
だと動かないのに,
With Forms!フォーム名
.ボタン_Click
End With
にすると動くのは私だけ?

253デフォルトの名無しさん2021/03/17(水) 08:27:13.40ID:o9MkZCaQ
まちがった.

254デフォルトの名無しさん2021/03/17(水) 08:27:40.08ID:o9MkZCaQ
With Froms!フォーム名

255デフォルトの名無しさん2021/03/17(水) 08:31:05.18ID:o9MkZCaQ
スレ汚しすみません、やり直し。

他フォームや親フォームのコマンドを実行する時,
Call Forms!フォーム名.ボタン_Click
だと動かないのに,
With Forms!フォーム名
Call .ボタン_Click
End With
にすると動くのは私だけ?

256デフォルトの名無しさん2021/03/23(火) 22:25:21.29ID:OYDSqGqD
レポートのテキストボックスが関数を呼び出すことがあるんだけど、それを検索する方法はないですかね?
VBEをいくら検索しても、ある特定のFunctionをCallしているのがなんなのかさっぱりわからなくて途方に暮れた後にレポートのテキストボックスと気づいたときの疲労感は凄かった。
スマートに一発検索する方法ありますか?

2572562021/03/24(水) 19:23:21.05ID:Oy88L6kY
どうも、ないようなので、for eachループを回して全部テキストにしました。
レポートの全部のコントロールを書き出したら24MBになりました。
コントロールから直接Callするのはお行儀が良くないですね。

258デフォルトの名無しさん2021/03/24(水) 19:53:42.42ID:Oy88L6kY
DoCmd.PrintOut
同じコードなのに、一方ではちゃんと複数枚印刷して、もう一方では常に1枚しか印刷できない。
ググると似たトラブルが見つかる。バグなんだろうか?ご存じの方いますか?

259デフォルトの名無しさん2021/03/25(木) 18:29:57.87ID:25o3kYjY
Access365 Windows10です。

Excel上からVBAでDAOにてAccessのクエリのレコードセットを取得しています。
Access上のクエリで表示されるレコード数と、Excel VBA DAOから取得したクエリのレコードセットのレコードの数が異なり、原因がわかりません。

それぞれのレコード一覧を出力してみると、あるフィールド(IIf(・・・,”対象外”, “督促対象”)としている部分) の値が、Access上のクエリでは「対象外」、Excelから取得したレコードセットでは「督促対象」となっているため、抽出条件が誤認識されてレコード数が異なることに気がつきました。

クエリの他の抽出条件にワイルドカード等を使っていないと思います。

クエリをDAOで取得した場合に、違いが生まれる原因を推測できる方はいらっしゃいませんでしょうか? 回避策があればお教えいただけると助かります。

260デフォルトの名無しさん2021/03/26(金) 12:11:20.45ID:x01Nq0VC
>>259
Accessのテーブルを、Excelからのリンクテーブルにしているものがあるのですが、クエリを開いている状態で、ExcelからDAOでレコードセットを取得すると、テーブルにしているExcelファイルが自動で開かれます。
その状態で取得したレコードセットの内容がおかしいことに気がつきました。

なぜレコードセットの値が異なるのかは、不明なのですが、テーブルにしているブックが開かれているとエラーを出力するようにして、回避しました。

261デフォルトの名無しさん2021/03/26(金) 12:30:39.51ID:9TlDuTMy
わからん すまん

262デフォルトの名無しさん2021/04/04(日) 17:14:14.07ID:gjYxCKFw
基本的なことで申し訳ないんだけど
https://www.helpforest.com/access/amv_vba/ac080004.htm
に書いてある開いてるファイルのバックアップとるコードで

strNameCopy = Left(strNameMoto, Len(strNameMoto) - 6) & "_" & Format(Now, "yymmdd") & ".accdb"

ってのがあるんですが Left(strNameMoto, Len(strNameMoto) - 6) の意味がわかりません。なぜ -6 なんでしょうか?
それと、
Format(Now, "yymmdd") だと 210404 になりますが”yy_mmdd_hhmm” としました
ここを 21_0404_17h15m とするにはどうしたらいいですか?
hやmの入れ方がわかりません

263デフォルトの名無しさん2021/04/04(日) 17:38:22.47ID:26lFIPnO
メッセージボックスは自動で閉じないしWSHもmessageboxtimeoutAもうまくできませんでした
通知の代わりに小さいフォームを0.5秒ほど表示させて閉じたいのですが、どのように記述したらいいですか?

264デフォルトの名無しさん2021/04/04(日) 21:11:55.53ID:3M5QmD23
>>262
-6は元ファイル名の".accdb"を取り除いてると予想。
"yy_mmdd_hh""h""nn""m"""で良いかな。
うまく行かない場合はグーグル先生に聞いてみて。

265デフォルトの名無しさん2021/04/04(日) 21:24:13.07ID:3M5QmD23
>>263
ちっさいフォームをダイヤログ形式で作成して、タイマーを500m秒に、タイマーイベントで
DoCmd.Close acForm, me.Name
だとどうかな。

266デフォルトの名無しさん2021/04/04(日) 22:50:03.97ID:gjYxCKFw
>>265
開くのはどうするんですか?

267デフォルトの名無しさん2021/04/04(日) 22:50:34.96ID:gjYxCKFw
ああこれで開いて閉じるのか

268デフォルトの名無しさん2021/04/04(日) 22:56:05.15ID:gjYxCKFw
>>264
取り除かないと拡張子が2つになってしまうからですね
そうしないと拡張子が2つついてしまうんですね

269デフォルトの名無しさん2021/04/07(水) 00:28:19.15ID:rJDYR4sC
レポートの詳細の一番下に線引くのってどうやるの?
フィールドや仕切り線だと線の真ん中が指定位置にくるようで、線の太さ分はみ出てしまう

270デフォルトの名無しさん2021/04/07(水) 05:48:31.03ID:Vznju2ao
詳細の最終行終わりにだけ線を引く方法が有るのか、知らんかった。
私はグループフッタの上に線を配置します。

271デフォルトの名無しさん2021/04/07(水) 12:38:41.43ID:RzHskyO4
>>269
VBAでEOFでVisible=trueにする

272デフォルトの名無しさん2021/04/07(水) 15:58:13.17ID:rJDYR4sC
>>271
図形の移動ってこう書くらしいんだけど

Sub TopAndLeftSamp1()
  Dim Sh As Shape
  For Each Sh In ActiveSheet.Shapes
  Sh.Top = Range("B2").Top
  Sh.Left = Range("B2").Left
 Next Sh
 End Sub

それはどう書くんですか?
太い線でもはみ出ないように一番下にくるんですか?

>>270
終わりにだけ、じゃなくて仕切り線を詳細の高さの最後に、はみ出ないようにおきたいということです

273デフォルトの名無しさん2021/04/07(水) 16:12:27.97ID:bHi8pMA7
>>272
それExcelじゃん
Accessのレポートの話じゃ無いの?

274デフォルトの名無しさん2021/04/07(水) 23:16:36.79ID:rJDYR4sC
>>273
ホントだ
ネット検索してコピペしたから間違えた
ACCESSでも似たようなので線書いたことあるんだけど

マウスで一番下にやってもラインの真ん中が一番下にくるみたいで、下半分がかけてしまう

275デフォルトの名無しさん2021/04/08(木) 23:29:31.27ID:JQVqmXIG
>>269
LINEで描けば自由自在
斜め線も描けるから試してみ
(あまり出番はないけど)

276デフォルトの名無しさん2021/04/09(金) 00:19:55.63ID:Gteazii/
いや韓国製はちょっと……

277デフォルトの名無しさん2021/04/09(金) 04:42:31.41ID:qNVyDJXN
ACCESSに将来はあるんだろうか
ライバルになるファイルメーカーもコロコロ社名変わってあやしいしもはや大規模事業者に焦点をあててるっぽい

mysqlとWeb系でつくるのがスタンダードになりつつあるの?
軽く勉強しようとしたけどVBA程度の知識じゃわけわからんかったというか何を勉強すればいいのかもよくわからん
sqlにhtml とcssも覚えなきゃならなくて
レポートとかどうやってつくるのかわからんし印刷関係はブラウザに依存するらしい
上記でGUIやレポートまでつくれるのかすらわからない

278デフォルトの名無しさん2021/04/09(金) 22:02:57.20ID:p4gVUybA
>>277
将来は分かりませんが代わりのツールは少ないですね
Officeは最低10年間はサポートされるのでスグには無くならないでしょう

たまにweb系の話が出るのはデスクトップアプリかブラウザアプリかの話ですよね
個人的にAccessの代わりにweb系というのは少し飛躍している様にも思えますが
どの基盤を使うかは用途や運用保守のし易さによって決めるものですのでその人次第です

279デフォルトの名無しさん2021/04/10(土) 12:39:36.27ID:UMFLPSSB
Access全盛期と違って、開発環境やDBが無償で提供されているし
htmlをテキスト出力するだけできれいなレポートも作れる
UIを自分でいじりながらデータ入力していくような人種にはいいんだが希少種だろう

280デフォルトの名無しさん2021/04/10(土) 14:43:14.97ID:UjDtjnXq
>>279
例えばどうするの?

281デフォルトの名無しさん2021/04/11(日) 09:47:57.70ID:5s7yLoxe
>>277
Accessはデータベースと言うより帳票ツールだよ
FileMakerはデータベースとしての機能が充実してるがFileMaker使うぐらいならMySQL、PostgreSQLで代替えが効く
どっちかと言うとFileMakerがライセンス料金の高さも有って残らないと思う

282デフォルトの名無しさん2021/04/11(日) 11:30:54.71ID:5s7yLoxe
FileMakerより(MySQL or PostgreSQL)+Accessで安くデータベース&クライアントシステムを作れると思う

283デフォルトの名無しさん2021/04/11(日) 17:50:34.38ID:X3jcs1bB
データベース部分よりもACCESSのフォームやレポートをつくる機能が貧弱なんだよね

>>282
MySQL or PostgreSQLに以降するのってどの規模になってから?
エクセルの延長線で使うレベルだとACCESSのままでいいですよね?

284デフォルトの名無しさん2021/04/11(日) 21:28:08.72ID:Zjk0ZDQj
ファイルメーカーはフォームやレポートの機能がリッチなの?
ファイルメーカーが良いかもよ。

285デフォルトの名無しさん2021/04/11(日) 21:33:55.74ID:X3jcs1bB
>>284
リッチどころじゃないよ
ACCESSがwin95
FMは10

286デフォルトの名無しさん2021/04/11(日) 22:19:59.40ID:Zjk0ZDQj
そりゃファイルメーカーに決まりだね

287デフォルトの名無しさん2021/04/12(月) 10:48:48.79ID:rGKItn7h
>>283
>>Excelの延長線上
Access mdbはある一定容量で破綻するからね
Excelで収まってるレベルでもMySQL Community EditionやPostgreSQLに移行した方が無料で使える訳だし
Excel,Access自体ライセンス必要だしライセンスフリーで使えるなら、それに越した事無い

288デフォルトの名無しさん2021/04/12(月) 10:51:16.61ID:rGKItn7h
FileMakerのメリットはWebサービス公開がし易いって所だよな
そういう使い方するにしてもLAMPとか使う方が安く簡単にWebサービス開始出来る

289デフォルトの名無しさん2021/04/12(月) 11:40:02.98ID:Ey8PGUUo
>>285
ファイルメーカーの45日無料評価版をインストールして少しいじってみました.
いまさら移行を考える程のメリットは感じられませんでしたが,確かにUIはシンプルで使いやすそうでした.

290デフォルトの名無しさん2021/04/12(月) 12:45:07.60ID:MyLZJXYd
>>289
>>いまさら移行を考える程のメリットは感じられませんでしたが,確かにUIはシンプルで使いやすそうでした.

それでライセンス料金は高い
あまりメリットが無い

291デフォルトの名無しさん2021/04/12(月) 16:33:34.27ID:Zar6nVa9
>>287
PostgreSQL使うとして一度設定してればACCESS使う感覚でレポートやクエリをつくれるんですか?

292デフォルトの名無しさん2021/04/12(月) 17:49:57.50ID:45/NLIkc
>>291
フロントエンドはAccess利用する
PostgreSQL固有のUIツールは無い

293デフォルトの名無しさん2021/04/12(月) 17:51:00.80ID:iBadv1fh
桐にしとけ

294デフォルトの名無しさん2021/04/12(月) 18:18:26.93ID:NqjzProv
>>292
ACCESSをフロントエンドで使う場合、という意味でした

295デフォルトの名無しさん2021/04/12(月) 18:32:01.84ID:45/NLIkc
>>294
PostgreSQLのテーブルにAccessからLinkはるだけ
そこでクエリー駆使しながらFormやレポート作れる
FileMakerより安く作れる

296デフォルトの名無しさん2021/04/12(月) 21:43:20.13ID:5xDeJx97
>>293
桐の価格を調べてきました
40台で使用するために1,115,400でした
機能がどうとか以前のお話しでした

297デフォルトの名無しさん2021/04/13(火) 07:41:55.91ID:b5G9r+g0
>>292
Accessの外部DBなら親和性の高いSQL Serverが多数だとは思います
Expressなら無料でライセンスも商用OKです
機能面もAccessで扱うDBサイズならお釣りが来ます

あえてPostgreSQLを推す理由を教えて欲しいです
無料以外のメリットはありますか?

298デフォルトの名無しさん2021/04/13(火) 11:23:44.71ID:3B0ES/zA
>>297
https://rainbow-engine.com/sqlserver-express-limitation/
ケースバイケースだがSQL Server Expressでも良いかも知れませんが
Linuxサーバーとかで稼働させる技術蓄積が少ない
PostgreSQL、MySQLはLinuxサーバーでの技術蓄積が多い
まさかWindowsサーバーでSQL Server Express動かすと思って無いか?
無償で構築したいからね

299デフォルトの名無しさん2021/04/13(火) 13:20:04.54ID:b5G9r+g0
>>298
Access案件でLinuxサーバー導入はかなりのレアケースだと思います
Linuxに明るい個人ならそれでも良いですが
一般的な企業では運用リスクと保守費用の面から現実的ではないのです
Access案件でその様な提案をしたらほぼ蹴られてしまいます

技術蓄積についてもAccess+PostgreSQLよりAccess+SQL Serverの方が遥かに多いです
そもそもこのスレに相談に来ている方はLinuxサーバーを前提に話していないと思いますよ

300デフォルトの名無しさん2021/04/13(火) 13:32:35.21ID:3B0ES/zA
>>Access案件でLinuxサーバー導入はかなりのレアケースだと思います
Linuxに明るい個人ならそれでも良いですが
>>一般的な企業では運用リスクと保守費用の面から現実的ではないのです
Access案件でその様な提案をしたらほぼ蹴られてしまいます

.NET COREとか提案したら蹴られるのか?
.NET CORE案件も相当数出てるよ
LinuxサーバーでDB,APサーバー運用するのは今や常套手段でしょ

>>技術蓄積についてもAccess+PostgreSQLよりAccess+SQL Serverの方が遥かに多いです

Windows製品ゆえ多いってだけだと思うよ

>>そもそもこのスレに相談に来ている方はLinuxサーバーを前提に話していないと思いますよ

Accessフロントエンドにした場合、サーバー側がWindowsサーバーしか前提としか無い、てのは狭量以外の何物でも無いと思うよ

301デフォルトの名無しさん2021/04/13(火) 13:46:56.78ID:LjzwNZrT
Access案件でのサーバーなんて、(是非は別として)テキトーなPCの共有フォルダでのaccdb(mdb)の共有で賄ってるだけなんて珍しくも無かろう

302デフォルトの名無しさん2021/04/13(火) 13:47:53.05ID:3B0ES/zA
中小企業にWindowsサーバー提案するってコストかかって仕方ない
CALの価格を知らないのかな?
中小企業ほどLinux導入し易いのに

303デフォルトの名無しさん2021/04/13(火) 13:48:51.64ID:3B0ES/zA
>>301
適当なサーバーだから無償のLinuxで十分

304デフォルトの名無しさん2021/04/13(火) 14:52:00.66ID:b5G9r+g0
>>300
.NET COREを挙げられてますが、Access案件での話です

Linuxサーバー自体は否定しません
実際Access外案件では昔より増えました

単純にAccessの外部DBにPostgreSQLを推す無料以外のメリットが知りたかっただけです
Linuxサーバーという予想外でしたが

長い間Access開発にも携わっており現実はほぼWindowsなんです
確かにAccessの機能自体は様々なデータソースが扱えますから
その意味では狭量と言われてしまっても仕方ありませんね

305デフォルトの名無しさん2021/04/13(火) 14:55:38.30ID:3B0ES/zA
>>304
CAL払える企業なら問題は何も無いよ
現実はCALで苦しんでる中小企業が多い
そこを見越して提案出来るかだと思う

306デフォルトの名無しさん2021/04/13(火) 20:50:49.88ID:b7IZM+9u
サーバーも含めて無料で構築したいだけなのにな
Windowsサーバー使ってCAL払い続けるなんて皆金持ってるんだなw

307デフォルトの名無しさん2021/04/14(水) 06:25:02.05ID:iZ4KD1hd
コピー中のExcelのデータをACCESSにいれるときは、テーブル自体を表示させないとペーストできませんか?

308デフォルトの名無しさん2021/04/14(水) 06:49:23.30ID:Y6ryzCuB
>>307
インポートが簡単です。
コピペは知らん、すまん。

309デフォルトの名無しさん2021/04/14(水) 07:42:09.50ID:DQnn+aVQ
excel vbaでsql叩くのが確実

310デフォルトの名無しさん2021/04/14(水) 08:49:11.55ID:iZ4KD1hd
>>309
初心者なのでイマイチわかりません

311デフォルトの名無しさん2021/04/14(水) 10:15:39.10ID:G8f2jTvc
>>310
AccessからExcelよりのインポートすれば良い
https://www.crie.co.jp/chokotech/detail/375/

312デフォルトの名無しさん2021/04/14(水) 10:16:31.17ID:G8f2jTvc
>>310
ExcelデータのインポートをAccessから実行すれば良い

313デフォルトの名無しさん2021/04/14(水) 10:25:33.61ID:G8f2jTvc
>>310
インポートで出来る

314デフォルトの名無しさん2021/04/14(水) 10:26:17.99ID:G8f2jTvc
>>310
import

315デフォルトの名無しさん2021/04/14(水) 13:18:00.15ID:5eouqB2E
お前ら「コピー中」を無視するなよ

316デフォルトの名無しさん2021/04/14(水) 13:26:51.89ID:g6z8n+hy
コピー中、なんてもともと出来ないべ

317デフォルトの名無しさん2021/04/14(水) 18:59:43.46ID:Y6ryzCuB
クリップボードのデータを貼り付けるなら手作業をなぞってテーブル開いて新規レコードに位置付けしてペーストすれば良さそう。クリップボード操作するapiサンプルコードが何処かにあったような、すまんまた明日。

318デフォルトの名無しさん2021/04/16(金) 09:00:21.71ID:V1Kjbl/r
試してないよ?
Excelで貼り付けたいテーブルと同じレイアウトのデータをコピーしてある状態で
DoCmd.GoToRecord,,acNewRec
DoCmd.RunCommand acCmdPaste
すると張り付いたりしないかな。

319デフォルトの名無しさん2021/04/17(土) 16:25:08.91ID:beZyyPJh
OLEオブジェクトって手動じゃないと挿入できないの?
VBAでの挿入を試みているんだけど、似て非なるオブジェクトが作られてしまう。プロパティの数が少し少ない変なオブジェクトが作られて困ってる。
とりあえずレポートにオブジェクトをつくるのはCreateReportControl メソッドを使えばできるんだけど、リンク親フィールド、リンク子フィールド、値集合ソース、値集合タイプがないオブジェクトが作られる。
そのうえ、OLEタイプが読み取り専用だからOLEの設定が出来ない。
どうしたらいいのかな?

320デフォルトの名無しさん2021/04/17(土) 17:21:36.76ID:rlSH46Cx
>>319
VBAプロジェクトでそのOLEオブジェクトを参照追加する必要有る
その前提を整えたらVBAで出来るんじゃ無いのかな
https://teratail.com/questions/279573
Formに画像追加する例

321デフォルトの名無しさん2021/04/17(土) 17:43:49.92ID:beZyyPJh
>>320
手動なら非連結オブジェクトフレームを挿入するとオブジェクトの種類のダイアログが出てくるので、そこで種類を選びますね。
この作業をVBAでやっておけばいいということですね。
ちょっと読んでみますね。

3223192021/04/17(土) 21:01:55.24ID:GNfw/saY
だめだああ
なにをやってもうまくいかない

323デフォルトの名無しさん2021/05/07(金) 07:32:03.14ID:DloXWpsH
いまだにAccess 2.0を所有中

324デフォルトの名無しさん2021/05/07(金) 12:12:51.35ID:nZH7MU+b
Windows3.1の頃? 95だったかな。

325デフォルトの名無しさん2021/05/13(木) 02:39:37.83ID:fH5L5fl1
ACCESSで在庫管理や備品管理作っても出先でみることができません(Androidスマホなので)
みなさんどうしていますか?
Webシステムを組むほど大きいわけでもないので予算もありません

適宜レポートを作っておきExcelやPDFにしてクラウドにいれとくとかですか?

326デフォルトの名無しさん2021/05/13(木) 04:25:52.50ID:HlQKEMAc
>>325
お前みたいな馬鹿には無理なだけ

327デフォルトの名無しさん2021/05/13(木) 05:05:22.97ID:4K+rsr0c
あーそうかい‼💢

328デフォルトの名無しさん2021/05/13(木) 06:42:53.98ID:l6yrLvBl
>>325
リモートデスクトップとかTeamViewerでWindowsにログインかな?

329デフォルトの名無しさん2021/05/13(木) 07:15:26.91ID:Ak9zxoyZ
>>325
データベース更新後にEXCEL作ってクラウドに保管するのを自動化すれば充分な気がしますね。

330デフォルトの名無しさん2021/05/13(木) 07:26:32.47ID:NATYYilK
そもそも、Windows 用のアプリはパソコン用だから、インターネットで使えない。
それに、文字コードも違うから読めない

インターネット用の表計算アプリを使えば?

331デフォルトの名無しさん2021/05/13(木) 08:30:28.57ID:hOYLqCl+
ストアでMDBを検索したら見れそうなやついっぱいあるやん

332デフォルトの名無しさん2021/05/13(木) 11:30:23.03ID:yB8C7/7J
>>325
Webアクセスする目的ならAccessよりFileMakerになるよ
そこまでするならデータベースをMySQLかPostgreSQLに移行してVB.NETでアプリ作る方が良いけどね

333デフォルトの名無しさん2021/05/13(木) 11:48:19.49ID:63TpZ/FZ
クエリーが上手く作動して、ニコニコしながら、sqlビューへ切り替えてコピーして、VBEでペースト。
余計なカッコを取り除いてdebug.printに打ち出すと結果が違うことがある。
なにが原因なのかなあ?いまはADOでやってるけど、DAOならうまくいくもんかなあ?
クエリーのSQLとADOのクエリーが仕様が違うのかなあ?
同じMS謹製だからANSIとかなんとか気にしなくていいのかと思っていたけど、違うのかな?

334デフォルトの名無しさん2021/05/13(木) 12:20:50.87ID:igbBK4jX
>>332
ファイルメーカーからハードル上がりすぎだろ

335デフォルトの名無しさん2021/05/13(木) 12:36:51.71ID:yB8C7/7J
>>334
FileMakerはライセンス料高いからね
Visual Studio習得してアプリ作れるならその方が良い
Webサーバーは必要だけどね

336デフォルトの名無しさん2021/05/13(木) 12:42:45.76ID:aIL5A3Qh
>>335
VB.netでwebサーバとか完全にもう別物ですやん

337デフォルトの名無しさん2021/05/13(木) 12:55:37.00ID:GXeEY8R8
>>333
カナ?はカタカナにしろ

338デフォルトの名無しさん2021/05/13(木) 13:09:30.39ID:yB8C7/7J
>>336
高いライセンス払う余裕有ればFileMakerで良いよ
現実は高いライセンス料払いたく無い企業が多いからね
FileMakerが普及しないのもこれが原因

339デフォルトの名無しさん2021/05/13(木) 13:31:32.10ID:DinFNpWn
だからって一から自分でつくるってのは飛躍してない?
家建てるときにどこのメーカーがいいですか?
に対して自分で建てろといってるようなもん

340デフォルトの名無しさん2021/05/13(木) 14:03:30.60ID:yB8C7/7J
>>339
自分で作れ、とは言って無いよ
ソフトウェアハウスの手を借りれば良い

341デフォルトの名無しさん2021/05/13(木) 14:07:34.22ID:fH5L5fl1
>>340
ライセンス料より高い気が……

342デフォルトの名無しさん2021/05/13(木) 14:56:12.91ID:HlQKEMAc
>>341
馬鹿には無理なのだから他人に金を出して頼むしかないだろ
馬鹿のくせに金を出さずに人にやってもらおうとか、ゆとりか?

343デフォルトの名無しさん2021/05/13(木) 15:00:43.59ID:9/CKV48N
>>341
ランニングコストってのが有ってだな、、
FileMakerだとライセンス1回切りじゃ無いから

344デフォルトの名無しさん2021/05/13(木) 16:59:09.51ID:fH5L5fl1
>>343
ソフトウェアハウスでも保守料かかるだろ
基本的には自分で改変できないし

345デフォルトの名無しさん2021/05/13(木) 17:16:07.25ID:9/CKV48N
Web化って時点でファイルメーカー選ぶしか無い様な、、
外部からアクセスするしないが重要

346デフォルトの名無しさん2021/05/13(木) 17:25:00.83ID:MH+VlhFF
外から見たいだけなら、リモートデスクトップでいいんじゃなかろうか

347デフォルトの名無しさん2021/05/13(木) 17:25:32.84ID:HlQKEMAc
>>345
馬鹿

348デフォルトの名無しさん2021/05/13(木) 17:48:02.70ID:9/CKV48N
>>345
それ有るの忘れてた

349デフォルトの名無しさん2021/05/13(木) 18:13:16.22ID:6ddXJmx+
ACCESSで在庫更新したあとOneDriveフォルダにEXCELエクスポートします。
あとはスマホでもタブレットでも参照可能です。

350デフォルトの名無しさん2021/05/13(木) 18:26:55.54ID:hOrZuwcL
デ、データアクセスページ……

351デフォルトの名無しさん2021/05/13(木) 20:11:21.52ID:R/rAXCYS
>>345
「Web化って時点でファイルメーカー選ぶしか無い」
なぜこういう嘘を書くのか。それとも本当にそう思っているならそんな頭の弱い人は書かなきゃいいのに。

352デフォルトの名無しさん2021/05/14(金) 10:03:38.95ID:wh02PaxN
>>350
実際使ってる例って有るのかな?

353デフォルトの名無しさん2021/05/14(金) 10:10:19.21ID:A+WZ3bIw
>>352
とっくの昔にお亡くなりになったような記憶が…

354デフォルトの名無しさん2021/05/14(金) 10:18:39.71ID:wh02PaxN
>>353
実例がほとんど無いね
https://support.microsoft.com/ja-jp/office/sharepoint-ロードマップの-access-services-497fd86b-e982-43c4-8318-81e6d3e711e8?ui=ja-jp&rs=ja-jp&ad=jp
Access Webアプリも無くなってる
ファイルメーカーの有利な点だな

355デフォルトの名無しさん2021/05/22(土) 19:40:24.10ID:1Qe3fJgv
ちょっと前までGoogleでデータベース・サービス持ってたのにいつの間にかなくなっちゃたな。
最近VBAよりGASが面白くなってきたので手を出そうと思ってたのに。
やはり無料じゃGoogleも厳しいか。

356デフォルトの名無しさん2021/05/27(木) 01:00:52.60ID:3lF12N8K
レポートやフォーム作るときに、拡大できないの致命的だよね
win標準の拡大ではぼやぼやで目がたえりれない
エクセルあたりでは普通に拡大できるのになあ
これだけでファイルメーカーに乗り換えようと思ったりしてよ

357デフォルトの名無しさん2021/05/27(木) 02:13:23.53ID:J8UpNeL3
馬鹿がファイルメーカー、ファイルメーカーとしつこく繰り返しているから絶対に使わない

358デフォルトの名無しさん2021/05/27(木) 08:19:11.99ID:qf3Pvmmz
と馬鹿が申しております

359デフォルトの名無しさん2021/05/27(木) 12:00:09.01ID:3lF12N8K
FM→ACCESSときたけど
レイアウトつくるのはびっくするくらい大変
そして頑張っても前時代的なのになってしまう
金額の問題だけで以降したんだけどね
ACCESSは365についてるから無料みたいなもの
FMは約6万

360デフォルトの名無しさん2021/05/27(木) 12:05:37.62ID:3lF12N8K
サブスクは5ユーザ からのみで年¥96,000
というびっくりプライス

361デフォルトの名無しさん2021/05/27(木) 14:45:17.54ID:U0nLnJgd
Report は pdf 出力やろ常考

362デフォルトの名無しさん2021/05/27(木) 15:51:14.66ID:ksqD/aLA
>>361
フィールドの位置とか外部ソフトでできるの?

363デフォルトの名無しさん2021/05/27(木) 15:53:14.54ID:UBVWS17P
ACCESSでA4に収まるように8ptくらいのフィールド配置してたら目が痛くなって具合が悪くなったな

364デフォルトの名無しさん2021/05/29(土) 06:45:06.05ID:b7REYRZH
>>363
ノートだとそうなんかな…
自作のときはずっと9ptがデフォだけど何ともないな…
拡大鏡でも使った方が楽な気がする

365デフォルトの名無しさん2021/05/29(土) 12:27:27.87ID:hFIjeD7o
>>364
拡大鏡ってぼやぼやになるからなあ

366デフォルトの名無しさん2021/05/29(土) 12:27:43.67ID:hFIjeD7o
ん?ノート?

367デフォルトの名無しさん2021/05/30(日) 02:44:36.28ID:gYrIGJpw
右側のプロパティって時間小さすぎるよな
レイアウト配置よりこっちをでかくできるようにしてほしい

368デフォルトの名無しさん2021/05/30(日) 02:46:50.94ID:gYrIGJpw
あれもうちょっとどうかならないんだろうか
一日使うにはストレスがすごすぎる

369デフォルトの名無しさん2021/05/30(日) 08:25:31.88ID:13wLe9nW
ユーの眼球レベルにあった
でかくて低解像度のモニター使え

370デフォルトの名無しさん2021/05/30(日) 11:48:00.52ID:AsIzYzCY
ユー買っちゃいなyo!

371デフォルトの名無しさん2021/06/01(火) 06:40:30.63ID:UJDWMLaS
共有ファイルとして使う場合
処理がバッティングすると、待ち?っぽい動きするんだけど、この待ち時間を短くとか長くとか設定できない?

372デフォルトの名無しさん2021/06/04(金) 04:59:49.95ID:JYH5jKrW
>>365
整数倍にすればボケませんよ

373デフォルトの名無しさん2021/06/04(金) 05:01:18.78ID:4UOZ506g
>>372
150でも200でもぼける

374デフォルトの名無しさん2021/06/04(金) 06:58:24.85ID:pJrSJSTA
5年ほど前に作った製品ラベルのレポートを修整しようとしたら、老眼は進んでるわ液晶の解像度は上がってるわ、マウスカーソルの移動量を増やしてるわで大変だった。デザインビューの拡大出来るようになると良いですね。

375デフォルトの名無しさん2021/06/05(土) 16:40:26.94ID:RpMlRy13
ファイルメーカーの体験版使ったらACCESSに戻れなくなってしまった
ACCESSになんかメリットある?

376デフォルトの名無しさん2021/06/05(土) 18:22:16.60ID:HEfJq5i5
馬鹿がファイルメーカー、ファイルメーカーとしつこく繰り返しているから絶対に使わない

377デフォルトの名無しさん2021/06/05(土) 18:58:27.51ID:vqCzfq5H
と馬鹿が申しております

378デフォルトの名無しさん2021/06/05(土) 18:59:13.81ID:ZYY2LhyT
>>375
コストかな。
田舎の工場で低価格な電子部品作ってる。30台くらいのパソコンで使うからファイルメーカーなんてコストは現実的ではないんです。

379デフォルトの名無しさん2021/06/05(土) 21:31:57.93ID:3DV79FRa
ファイルメーカーとAccessは得意分野が全然違うのでは?

380デフォルトの名無しさん2021/06/05(土) 21:53:37.74ID:mImo/W/A
ファイルメーカーの宣伝でしょ

381デフォルトの名無しさん2021/06/05(土) 22:47:17.80ID:RpMlRy13
>>380
ACCESSでうまくいかずもやもやするたびに体験版つかってみて
ライセンス料なんかが不安でACCESSにもどるってのを繰り返してる
ACCESSが現代的なGUIになってくれて
ある程度はコード書かなくてもできるよえになればいいんだが

382デフォルトの名無しさん2021/06/06(日) 02:59:11.72ID:g1lC8rmM
え!?ひとりでも最低
じゅじゅじゅじゅじゅうまんえーん!?
Access VBA 質問スレ Part2 	YouTube動画>1本 ->画像>5枚
ちなみにキントーンもこの商法みたいだな

ACCESSはUIがクソなのと共有がほぼできない、ちょっとしたことでもコード書かなきゃならない、その代わりに激安ってことなんだろうな
逆にそこらを改善するのはこんくらい金とらなきゃできないことなのかもしれん

383デフォルトの名無しさん2021/06/06(日) 04:17:17.40ID:I3Drh9AD
馬鹿

ACCESSは共有がほぼできない

384デフォルトの名無しさん2021/06/06(日) 10:18:31.22ID:9mmqAG88
FileMake使いのやつって
Access使いを見付けると必ず攻撃してくるよね
なんで不況に熱心なのかな

385デフォルトの名無しさん2021/06/06(日) 10:21:05.17ID:9mmqAG88
馬鹿

FileMakerはコード書かなくていい(キリっ)

386デフォルトの名無しさん2021/06/06(日) 11:26:09.24ID:tDAG+yA0
と馬鹿が申しております

387デフォルトの名無しさん2021/06/06(日) 14:07:30.75ID:g1lC8rmM
いくらなんでも高すぎる
あれって全社員にipadもたせてリアルタイムでデータ共有するような大企業向けだろ
とはいえほかにACCESSしか選択肢がなくてACCESSは手間がかかり過ぎるが

388デフォルトの名無しさん2021/06/06(日) 16:01:30.88ID:/p4HIOC8
ACCESSは実質開発が停止してるからな
Web公開手段を再度実装したらFileMakerなんて駆逐出来るのに

389デフォルトの名無しさん2021/06/07(月) 23:05:55.18ID:7Tyglgss
>>373
それ元がボケてるんやな
ディスプレイ買い換えるしかないな
うちは拡大してもクッキリやで

390デフォルトの名無しさん2021/06/08(火) 00:47:30.58ID:Cnc+U0Kq
>>389
んなことないだろEIZOのFLEX Scanだし
ぼやけるって言葉の認識だと思うが
ベクターとラスターの拡大みたいなこと
Access VBA 質問スレ Part2 	YouTube動画>1本 ->画像>5枚

拡大鏡だと単純拡大だからガタガタのぼやぼや
スマホの拡大縮小だとおかしくならないよね?
ソフトに標準で拡大縮小が実装されているならそれと同じできれいに拡大できる
ACCESSはないから拡大鏡つかうことにかるから汚いしつかいにくい

391デフォルトの名無しさん2021/06/10(木) 00:40:17.87ID:BRYBvkaF
>>390
〉拡大鏡だと単純拡大だからガタガタのぼやぼや

単純拡大だからガタガタになるので正しい
しかしぼやぼやにはならない

頭(目?)悪そうだなこいつ

392デフォルトの名無しさん2021/06/10(木) 01:23:12.45ID:/1oHskcz
文字が
Access VBA 質問スレ Part2 	YouTube動画>1本 ->画像>5枚
こうなるのをボヤボヤといってるんだと思う

MSゴシック使ってるやつはわからないかもしれないが
アンチエイリアス入ったフォントで拡大鏡使うとボヤボヤになるよ
Access VBA 質問スレ Part2 	YouTube動画>1本 ->画像>5枚

393デフォルトの名無しさん2021/06/14(月) 20:33:26.59ID:bsW07B0Y
getobjectでVBSからmdbへ接続してACCESSのモジュールを書き換えているんだけど、プロシジャーをチマチマ書き換えるのが面倒になってきたので、
既存モジュールの全行を削除してからModule.AddFromFile メソッドで新モジュールを一括して書き換えた。
mdbを保存する段になって「ファイルの共有ロック数が制限を超えています」と怒られた。

たしか、コミットトランスするんだよなあ、と資料を読んでみたが、それが出来るオブジェクトが存在しない。
一体どうしたらいいのかな?

394デフォルトの名無しさん2021/06/15(火) 10:02:33.87ID:Bs75sj8Q
ACCESSを買えば良いと思います。

395デフォルトの名無しさん2021/06/15(火) 11:17:25.55ID:KpoHzIzW
>>394
Microsoft 365 for businessを使用してます。
ACCESSはしょっちゅう壊れるからVBSで出来ることはVBSでやりたいですね。

396デフォルトの名無しさん2021/06/15(火) 13:21:19.21ID:HnTVFPij
>>395
そんな面倒なことw
2.0使いはじめた頃は間違った使い方してたのもあって壊しまくったが、ここんとこ壊れたことなどないぞ

397デフォルトの名無しさん2021/06/15(火) 15:19:36.70ID:KpoHzIzW
>>396
フォームのコマンドボタンの位置をほんの少しずらしただけで壊れこともあるし、最適化で壊れたこともある。
最近もどっかの記事でそのような記述を見たような気がする。

VBSはコードを見るのも書くのもサクサクだからお気に入りだよ。重たいACCESSを開かなくていいのは気が楽だよ。
でも、関数がVBAと少し仕様が違うとか面倒なことがあるのが玉に瑕だなあ。

398デフォルトの名無しさん2021/06/15(火) 20:40:00.08ID:XJxpvmdE
>>393
mdbからaccdbにすると壊れ難くなる気がします。

399デフォルトの名無しさん2021/06/16(水) 09:49:56.68ID:ni17rAhE
>>398
面白そうですね。参照設定を変更するくらいで出来そうですね。だめなら宣言文にDAO.を加えれば出来そうな気がします。
今はほぼ全ての改造をVBS経由で行えそうだから、それで行き詰まったらやってみます。

400デフォルトの名無しさん2021/06/16(水) 16:39:10.95ID:uJQ6HHCX
>>393
共有ロック数って言ってるんだから
VBSからmdbへ接続が何度も繰り返してるか間違ってるんじゃね

401デフォルトの名無しさん2021/06/16(水) 18:15:04.80ID:5mM/xZpb
プロシージャーを書き換えるプロシージャーを書くのって面白い?

402デフォルトの名無しさん2021/06/16(水) 21:11:44.71ID:ni17rAhE
>>400
共有ロックの問題はMaxLocksPerFileを増やしたらあっさり解決しました。
>>401
手作業でプロシジャーを変更していたときより遙かに楽になりましたし。仕事が楽になる過程は面白いです。
なによりもAccessと違ってサクサク動くのがVBSの最大の魅力です。

403デフォルトの名無しさん2021/06/16(水) 21:18:57.41ID:ni17rAhE
一括でモジュールを書き換えるのすら面倒になったのでLoadFromTxtに切り替えた。
これならフォームやレポートも丸ごと移植可能だわ。

404デフォルトの名無しさん2021/06/22(火) 11:37:45.99ID:Ug3/ZHCp
オフィス365でデーターを保存したときにウインドウの上のバーの箇所のタイトルに
「ファイル名+保存しました・・」って表示になるけど、
これ出さないように出来ないのかな?

ウインドウのタイトルが変わるとRPAが誤作動をおこすので
いらない機能をつけるなよといつも思います。

405デフォルトの名無しさん2021/06/22(火) 11:40:11.76ID:Ug3/ZHCp
>>404
誤爆でした。ここAccessなんですね。。

406デフォルトの名無しさん2021/06/22(火) 19:29:04.84ID:jEG7fGSr
なんでVBA使わずRPAなの?

407デフォルトの名無しさん2021/06/22(火) 20:23:21.77ID:BN5S6vpx
そのVBAを操作する人間の操作を代行させるのがRPAなんやで

408デフォルトの名無しさん2021/06/23(水) 19:45:53.16ID:G1+Cnxf/
なんで公共の場で地元言葉なの?

409デフォルトの名無しさん2021/07/24(土) 13:25:46.25ID:1ILHRw72
レポートを変数「i」回だけ複数印刷しようとして、
PrintCountやFormatCountを使ったのですが、
「i」とPrintCount・FormatCountが一致しません。

PrintCountやFormatCountって、
ページ変更・ヘッダー・フッターなどでも、カウントが増えますか?

アルゴリズムそのものが間違いでしょうか?

410デフォルトの名無しさん2021/07/24(土) 14:08:20.10ID:Q5wmuS+A
おまえごときがVBAやる事そのものが間違い

411デフォルトの名無しさん2021/07/24(土) 19:42:05.93ID:g6yRedEM
なな、南斗

412デフォルトの名無しさん2021/08/04(水) 20:55:05.72ID:+oxSmlyp
[タイプ]が勝手に[タイプ]になってしまう。
[ ]で囲んでるのに。なんぞこれ。

413デフォルトの名無しさん2021/08/05(木) 08:02:56.74ID:MUFJqoFE
あれ、今日は勝手に半角に戻らない。
再起動するだけで良かったのかも。
独り言スマンね。

414デフォルトの名無しさん2021/08/05(木) 14:37:35.48ID:hIo3G+nj
解決済みという事ですが
名称の勝手変換は[名前の自動修正]を有効にしていると起きます
初心者向けの親切機能ですが、オブジェクト名などを細かく定義している場合には逆に足枷になります
名称変更時に自動トレースしきれずバグを生み出したりします
ご参考までに

415デフォルトの名無しさん2021/08/05(木) 18:07:31.70ID:Xn5oJsvt
いや、再発しました。
名前の自動修正、調べてみます。

416デフォルトの名無しさん2021/08/07(土) 07:56:44.50ID:GRpq7tgL
Windows11+ACCESS365の環境で発生してます。
タイプ(半角)と入力しても行を移るとタイプ(全角)になっちゃう。[ ]でくくっても駄目。
Windows10+ACCESS365では[ ]でくくると勝手に全角にはならないので、Win11Betaのせいっぽいです。
アプリの修復試してみて、駄目ならWin11Betaのフィードバックに上げます。

417デフォルトの名無しさん2021/08/07(土) 20:17:05.58ID:51b7egKe
どっかに全角のタイプってオブジェクトがある(あった)んだろな

そういえばWIN10でNLSのバージョン変わって全角半角の判断がおかしくなる問題があったな
ちょっと試したWin10の詳細バージョン書いてくれ

Win11のNLSってどうなってるんだろ

418デフォルトの名無しさん2021/08/27(金) 14:57:39.16ID:2jUlNhAQ
すみません、見逃してた。
Windows10の21H1ですね。
NSLがなんの事かわかんないですが、確かに前にも経験したトラブルの様な気がします。

419デフォルトの名無しさん2021/09/04(土) 15:37:28.00ID:s2WpiZ/S
明後日スタンダード試験だけどやばい模擬問題正答5割だわ

420デフォルトの名無しさん2021/09/04(土) 16:34:10.88ID:JBLhGxRz
ん、まぁ、ガンガレ

421デフォルトの名無しさん2021/09/05(日) 03:44:21.58ID:Ocn+wvkQ
外部からaccessの特定のレポートを開く方法ある?

422デフォルトの名無しさん2021/09/05(日) 14:14:02.27ID:ICYnYWWd
外部って?
普通にCOMで操作すれば良いんじゃねえのか

423デフォルトの名無しさん2021/09/07(火) 12:53:43.40ID:3mZ93kfX
パススルークエリのパラメータをaccess外から設定する機能教えてください。

424デフォルトの名無しさん2021/09/07(火) 13:13:29.25ID:7P2mUzTw
access外って?
何がやりたいかわからん

425デフォルトの名無しさん2021/09/07(火) 14:16:04.54ID:QthkAqNV
ADO
ADODB
DAO

426デフォルトの名無しさん2021/09/08(水) 22:14:40.15ID:jpM3jR9r
>>425
データベースに
ドライバなしでvbaで接続する方法ってないの?

427デフォルトの名無しさん2021/09/09(木) 01:34:00.79ID:4EZcQadY

428デフォルトの名無しさん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に、何か制限などありますでしょうか?

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って変だよね

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];

438デフォルトの名無しさん2021/11/30(火) 10:50:50.28ID:d0QAjKSx
>>431
values (1, "name")
じゃ駄目なの

439デフォルトの名無しさん2021/11/30(火) 10:58:46.58ID:+NfPg838
>>438
単純にinsertするだけならそれでいいんだけど、existsを使って条件付けようとしてるのでvaluesは使えない(エラーになる)

440デフォルトの名無しさん2021/11/30(火) 12:38:13.11ID:nsxxcWz3
それ自分でDUALという名称でテーブルを作って1レコード入れておけば出来るよ。
OracleのDUALも実体はそんな感じだったと思う。

441デフォルトの名無しさん2021/11/30(火) 16:33:37.59ID:KirC+CSy
>>437
更新はできるけど、存在しない行を更新しようとしたとして
その行を新規追加することなんてないだろ...
と思ったけど、追加されるのか

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的には「更新可能クエリ」はテーブルと同等の扱いなのだろう

445デフォルトの名無しさん2021/11/30(火) 22:05:19.66ID:KirC+CSy
>>444
Viewが実テーブルとほぼ同じ扱いってのは別に問題じゃない
UPDATE文でテーブルの行数が変わるのが無茶苦茶なんだよ

446デフォルトの名無しさん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+qI2
>>431
SQL一発では出来ないよ
残念だが
DOループで回す事になる

4494312021/12/02(木) 11:57:32.43ID:nKskuO+T
ありがとうございます
分岐で分けることにしました

4504402021/12/02(木) 22:29:47.92ID:vu0CN48k
もうちょっと俺を信用してもええんやないかと思ったが
出来たんならええか

451デフォルトの名無しさん2021/12/08(水) 11:00:44.75ID:8eCyKUYS
データベースに対し、レポートを外部データの取込で追加するのですが、
この操作をGUIでなくコマンドで行う事は出来ますでしょうか。

452デフォルトの名無しさん2021/12/08(水) 11:36:19.36ID:XFpeOKs/
mdbファイルまるごと差し替えでok

453デフォルトの名無しさん2021/12/08(水) 14:57:00.86ID:8eCyKUYS
>>452
返信ありがとう
やっぱ基本はDBごと差し替えになるんですね・・・
最新を管理しないといけないということですか

454デフォルトの名無しさん2021/12/08(水) 16:58:22.13ID:sRvDCOgH
>>450
レコード入れずに試してみてました
あとで確認してみます

455デフォルトの名無しさん2021/12/08(水) 18:12:44.70ID:ixTDMdmo
>>451
access起動コマンドラインオプションに
/x マクロ名
で自動実行可能

向きが逆だけどオブジェクトのコピーでレポートをコピー出来る

456デフォルトの名無しさん2021/12/08(水) 20:30:00.04ID:FsTgnRus
>>451
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)
);

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がサポート切れってどこの情報だ?

461デフォルトの名無しさん2022/01/17(月) 12:28:46.14ID:t8m0YBBL
OneDriveにコードをバックアップして直接開いたところ

Access VBA 質問スレ Part2 	YouTube動画>1本 ->画像>5枚

こういった線が付きました
Office2016 Proなのですが設定等でVBエディターでも表示できますでしょうか
またお恥ずかしながらこの線の一般的な名称も教えて頂けませんでしょうか

462デフォルトの名無しさん2022/01/17(月) 17:44:28.15ID:hBkYcVxQ
>>461
何で開いたのかは知らんけど、AccessとかのVBAエディタには、そういった今どきの便利な機能は無いかと
一般名称かどうかはしらんけど、VSCodeとかの設定では Indent Guide でひっかかるんじゃないかな

463デフォルトの名無しさん2022/01/17(月) 20:02:01.14ID:r2vXEkpI
>>462
ありがとうございます
名称のほうぐぐってみまして、確かにVS関連の情報が多く出てきました
大変便利ゆえに残念です!

464デフォルトの名無しさん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のから操作するとうまくいきません.解決策はないでしょうか?

467デフォルトの名無しさん2022/02/22(火) 22:38:16.30ID:h8gQU92u
間違えました。
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

469デフォルトの名無しさん2022/02/23(水) 10:16:59.77ID:/GeE/zJY
>>468
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/zJY
>>470
ありがとうございました.
FileDialogだとカレントフォルダーで開いてくれました.

473デフォルトの名無しさん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
デフォルト何だっけな

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

と記述したほうが処理的には一回で済むという解釈になりますでしょうか
すみませんがご教示頂けたらと思います

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でもできそうなものでしょうか?
(過去に話題として出てたらごめんなさい)
できそうならやってみようかと
茨の道ならあきらめます

480デフォルトの名無しさん2022/03/06(日) 16:34:17.90ID:TgGQVPNx
2つとも分からんけど、VBAが使える環境なら動的SQLは可能なはず

4814792022/03/06(日) 17:10:27.06ID:R+n9Kzax
SQLとは、使用人から経営者になることだ
今まで自分で作業してたのをしなくてよくなる
使用人に、「こういうのを出してくれ」と
言うだけでよい

数独についてであれば、今まで
総当りするプログラムとか
条件判定とかを自分で考えていたが
SQLならそうしたものは自分で考えなくてよい
勝手に総当りして勝手に判定してくれる

・・・ということが書いてありました
これって、既存のプログラムの要件を
SQLで表現できれば中身は考えなくてよい
ってことですよね けっこうおもしろいかも

482デフォルトの名無しさん2022/03/07(月) 07:14:29.39ID:xVPINsIe
経営しなくてもお金が稼げるSQLがどこかに書いてあると良いのに。

483デフォルトの名無しさん2022/03/07(月) 12:53:13.63ID:+OeG3Wfd
>>479
JDBC Driver で Access MDB に接続できる

つまりワカラン

484デフォルトの名無しさん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で補ったりする必要はあると思う

485デフォルトの名無しさん2022/03/07(月) 14:07:14.74ID:tjPYNfUL
各DBで使えるSQL構文一覧表
(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に置き換える

488デフォルトの名無しさん2022/03/09(水) 11:17:27.88ID:wDARNtYc
動的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文の中で
表現すればいいのかわからん

490デフォルトの名無しさん2022/03/11(金) 12:30:05.01ID:+z9vFN5I
>>489
>>484の記事を1から読んでこい

491デフォルトの名無しさん2022/05/01(日) 00:28:53.70ID:uZ+uV6s8
VBAのコード内の文字を置換するプログラムをVBAで行うことはできるでしょうか?
置換の組合せが複数あるので一つずつ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でできる方法を知りません.

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で検索して,オブジェクトであることをしりました.
できそうな気がしてきました.
調べます

498デフォルトの名無しさん2022/05/01(日) 21:27:48.04ID:q0kLnjNb
>>497
お前みたいな馬鹿は、方法自体間違えていると思うよ

499デフォルトの名無しさん2022/05/01(日) 22:36:20.05ID:uZ+uV6s8
>>498
正しい方法言ってみな。
言えなきゃ超バカ決定。

500デフォルトの名無しさん2022/05/01(日) 23:10:31.48ID:q0kLnjNb
やっぱり馬鹿だったか
馬鹿に馬鹿と指摘すると怒りだす

501デフォルトの名無しさん2022/05/03(火) 18:13:45.75ID:hABwtxOZ
>>494>>496
497ですが、
Application.VBE.ActiveVBProject.VBComponents(i).codemodule.ReplaceLine(j,"修正後コード文字列")
を使ってできました。

502デフォルトの名無しさん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の提供するオブジェクトは大抵コレクションで管理されているだろ!
お前の作ったオブジェクトも管理できるようにしろ!
初歩だぞ初歩!

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登録するんだが。

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のあつまりでつか?

512442022/06/18(土) 22:47:23.35ID:yLkug1TW
味噌も糞もいるのがこういう掲示板の特徴
それが面白ければ来るし退屈なら来ない
文句言うのはカッコ悪い

513デフォルトの名無しさん2022/06/19(日) 06:53:58.66ID:R9q2ZnJn
>>512
こういうのかっこ悪い

514442022/06/19(日) 07:49:57.69ID:ZfwUc+SV
>>513
いやいや本当のイケメンだろうな

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とかで設定していませんので不思議です。

5175162022/06/21(火) 17:34:19.49ID:q4pJaYn5
解決しました。

518デフォルトの名無しさん2022/06/21(火) 19:20:51.51ID:EkCiEQiW
>>517
どうやって?
知りたい

5195162022/06/21(火) 19:44:50.71ID:q4pJaYn5
>>518
いろいろ試したけど、結論は超簡単。
ファイル→オプション→現在のデータバース→アプリケーションオプション→ドキュメントウィンドオプション→タブ付ドキュメントをon

これでファイル名とパス名が表示されて複数のmdbを起動しても混乱しなくなりました。

520デフォルトの名無しさん2022/06/21(火) 20:23:15.71ID:QtwFSmmg
OS:win10
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シート全てインポートすればクエリー加工出来ると思うが、、

523デフォルトの名無しさん2022/06/22(水) 10:16:19.65ID:N/5JiATv
>>520
Excelシートリンクでも良いぞ

524デフォルトの名無しさん2022/06/22(水) 10:27:56.84ID:lUHG2pSs
ネ申エクセルからデータを拾いたいとかそんな話じゃね?
CreateObject("Excel.Application")
使って対象ファイル開いて、そっからさきはExcel VBAの範疇やろ

525デフォルトの名無しさん2022/06/22(水) 12:36:20.21ID:N/5JiATv
なんだ
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+L83Np
>>521-523
なにをやりないか再度確認してコード見直していたら不具合点見つかって前進しました…
>>525
やりたいのはこれで30個程度のエクセルがあって全てフォームは統一されています
a3とb4とw30の値をテーブルにズドンと引っ張りたいのです

もうちょっと頑張ってみます
遅くなってごめんなさい

530デフォルトの名無しさん2022/06/23(木) 12:13:27.06ID:jwJvRDT9
ACCESS VBA EXCEL CELLでクグルと沢山出て来ますね。
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 のオブジェクトの閉じる

これでいけるんじゃね?

532デフォルトの名無しさん2022/06/24(金) 06:07:38.19ID:X+tgL9yK
>>531-532
ありがとうございます
こう書くとすごくわかりやすいですね

テーブル追加やLOOPは調べて書き方を学べそうなのでやってみます!

533デフォルトの名無しさん2022/06/26(日) 13:37:45.11ID:DTfGvOZF


534デフォルトの名無しさん2022/06/26(日) 22:59:47.94ID:Ter0iV/V
たびたびすみません
ばしっとフォルダ内のファイル名を取得することはできました
>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はクリエイトオブジェクトで作ったエクセルオブジェクトね
あと変数は適当に定義しておいてね。

536デフォルトの名無しさん2022/06/27(月) 01:42:38.20ID:Yed1CrTu
>>535
おおお
できてきました とても進みました
・フォルダを指定してファイル名を取得
・変数XYZに特定のセルの値を取得

537デフォルトの名無しさん2022/06/27(月) 01:45:22.88ID:Yed1CrTu
すみませんCTRL+エンターで送信になってしまいました
・フォルダを指定してファイル名を取得
・指定したシートから変数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:LR8Jvthl
>>539
ブック数が多いから VBA でやりたいんじゃないの?
インポートでできる量だったら手でコピペの方が早いだろ

541デフォルトの名無しさん2022/06/27(月) 15:59:24.18ID:jKYPD+Yx
対象のExcelファイルが固定なのか、頻繁に入れ替わるかどうかにもよるわな

542デフォルトの名無しさん2022/06/27(月) 20:22:09.19ID:UdQiWAN3
どなたか教えてください。

売掛金消し込みのマクロを作成しています。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の質問するなよ

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スレみればなにがあったのか分かるよ

548デフォルトの名無しさん2022/06/28(火) 21:08:59.28ID:i28fB/zi
昨日アホな質問した541です。

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:tPok425v
>>551
それだけ焦ってたんでしょ。Excel VBA で反応がなければ藁をもすがる気持ちで アクセス VBA で聞いたんじゃない。
広い気持ちで

553デフォルトの名無しさん2022/06/29(水) 13:50:40.09ID:Es0nfTu8
x VBA初心者
o 5ch初心者
o パソコン初心者
o コミュ障入門者(上級)

5545162022/06/30(木) 01:00:46.93ID:1OP/W/CA
DoCmd.OpenReport "レポート名", acViewPreview
DoCmd.PrintOut acPrintAll, , , acHigh, 枚数

新規レポートにラベルを貼っただけものだと希望どおりの枚数が印刷される.
しかし,別のレポートだと常に1枚しか印刷されない.
ネットでも同じ報告を確認した.バグ説もある.

皆さんはどうですか?やっぱりバグですかね?

5555162022/06/30(木) 16:01:17.27ID:1OP/W/CA
解決した.
デコンパイルとコンパクトしたらいつの間にか設定した枚数が印刷されるようになった.
accessはマジで面倒くさいなあ.
デコンパイルとコンパクトの待ち時間をを返して欲しいよ

556デフォルトの名無しさん2022/06/30(木) 19:00:33.50ID:PX9/MxY9
デコンパイル、知りませんでした。

557デフォルトの名無しさん2022/06/30(木) 20:22:38.17ID:1+oYjPxt
デコンパイル、昔は割と鉄板の解決方法だったんだけどね
それでだめなら新規作成して全モジュールインポートとかもあったな

最近は必要性が減ったけど、まだたまにはあるんだな

5585162022/06/30(木) 22:53:16.59ID:1OP/W/CA
コンパクトだけでも良かったのかも知れないが,習慣で両方やることにしている
ついいましがたも.Docmd.OpenReportのOpenArgsがレポートに渡らなくて困っていたが,コンパクトをしたら作動した.
終了時にコンパクトするオプションがあるくらいだから頻繁にやるべきなんだろうね.
コード書いているときは非常に頻繁に破損するからね.

559デフォルトの名無しさん2022/06/30(木) 23:46:30.14ID:1+oYjPxt
あれはデータ領域を圧縮するのが主で、コード部分にはあまり影響しなかった気がするが
最近のアクセスでコードが破損するのはだいぶ減ったと思うが
VBEからコンパイルするだけで解決してたんじゃないか?

5605162022/07/01(金) 00:40:02.55ID:SILFs/Ha
くわしいことはわからないが,挙動不審が治ることがあるんだよねえ
とにかく,試行錯誤していると必ずと言っていいほど,壊れるよねえ.
メモリーが不足していますとか出始めると,その日のうちに全フォーム消失とか起こるからなあ.

561デフォルトの名無しさん2022/07/01(金) 10:45:11.72ID:x9gnk4T5
試行錯誤の過程のほとんどを貯め込むからな 設定で「終了時に最適化」で、都度終了を心掛けるか
大幅な改修の度にコンパイルのクセを付けるか ファイルサイズに気を付けて、「こんなサイズのはずは無い」ってな時は要注意
 で、それは、お道具の使い方が雑、間違ってるってだけで、すぐAccessのせいにする連中はお里が知れる ってこと

5625162022/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

563デフォルトの名無しさん2022/07/07(木) 16:12:50.20ID:N4ENiOaQ
>>562
mdb/accdbファイルの場所が欲しいのなら
CurrentProject.Path
を使おう
CurDir$や>>562の例なんかで返されるカレントディレクトリはファイルダイアログとかで開いたフォルダになるっぽい
その辺の仕様に関する資料は知らんけど

564デフォルトの名無しさん2022/07/07(木) 19:57:05.70ID:V/fQnZ1U
そもそも、
>vbsならscriptの存在するディレクトリ
が間違ってる気がするが

カレントディレクトリの概念って最近は説明されてるの見ないなぁ
GetFolder(".")が返してるのはカレントディレクトリ(からの相対パスで自分自身)
カレントディレクトリはACCESS.EXEの場所や.MDBファイルの場所とは別に存在する

まあMDB開くときはそこをカレントにする場合が多いけどな
つねに一致してるとは限らん

5655162022/07/07(木) 20:26:42.06ID:9tJXVGoG
>>564
> そもそも、
> >vbsならscriptの存在するディレクトリ
> が間違ってる気がするが

VBSで稼働していたスクリプトをVBAに移植している際に気づいたので、正しいと思います。
スクリプトを任意のフォルダにコピーしてそのフォルダ内のファイルを一括処理するのに使っていましたので。

566デフォルトの名無しさん2022/07/07(木) 20:31:06.22ID:ty1oWU7C
chdirで変えられちゃうけど

5675162022/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:aHYxM19P
>>565
そのスクリプトをショートカットにして、
作業フォルダを変えて動かしてみたい

571デフォルトの名無しさん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

573デフォルトの名無しさん2022/07/08(金) 12:30:53.39ID:PreZKXp3
もはやAccess VBAとは関係ない話になってるし、元質問者は聞く耳持たないみたいだから
これ以上続ける意味無いよ

574デフォルトの名無しさん2022/07/11(月) 11:04:56.16ID:1W23UOpt
>>562
fso使ってるんだから当たり前

575デフォルトの名無しさん2022/07/12(火) 17:20:09.84ID:xDQ7ywi9
>>574
なぜ「fsoを使うと」なにが、「当たり前」なんだい?

576デフォルトの名無しさん2022/07/13(水) 18:08:17.37ID:sooqvjiy
7月12日のWindows Updateを実施した端末で軒並み「要求されたタイプ ライブラリまたはウィザードは VBA プロジェクトではありません。」
というエラーが出てAccessで作ったものが起動できない症状が出てるんだけど、何か知ってる?
ちなみにAccess Runtimeを再インストールすると直る。修復ではダメ。

577デフォルトの名無しさん2022/07/13(水) 18:15:29.57ID:sooqvjiy
>>576 書き忘れたけど手元で問題が発生しているのはAccess Runtime 2013 32bitの端末。
OSはWin8.1とWin10の両方で発生してる。

578デフォルトの名無しさん2022/07/13(水) 19:12:40.99ID:PtV2v+lq
うちの環境とほぼ同じですね、まだ発生してないけど明日あたり起きるのかな。
runtimeの入れ直しですね、了解っす。

579デフォルトの名無しさん2022/07/14(木) 09:57:45.69ID:gGJjrJSy
>>576
特定した。
KB5002121を入れると症状が発生する。
Access Runtimeを再インストールしても再度Windows Updateを実施すると元に戻るから
KB5002121をブロックしないとダメだ。

580442022/07/14(木) 12:52:21.90ID:Fq9OF9ol
迷惑な話ですねえ。
MSのプログラマーがアホなのは今に始まったことじゃないけど

581デフォルトの名無しさん2022/07/14(木) 18:41:39.80ID:Zi9qyvS+
昔EXCELのVBAで似たような話が合った気がするな
その時はテンポラリディレクトリの掃除したら起動するようになったはずだから
いちど試してみては

582デフォルトの名無しさん2022/07/18(月) 12:31:42.55ID:1omE+gQa
MSは自社製品のテスト駆動開発すらしてない
テストが面倒になるとサポート打ち切り

583デフォルトの名無しさん2022/07/18(月) 13:02:03.33ID:dNd6yRIh
>>582
それソースあるの?

584デフォルトの名無しさん2022/07/19(火) 13:18:07.18ID:4mWHj4S5
2022年7月パッチで「Microsoft Access」に問題、バージョンが異なるとファイルが開けない
https://forest.watch.impress.co.jp/docs/news/1425748.html
>異なるバージョンの「Microsoft Access」で作成されたデータベースファイル(ACCDE/MDE)を開こうとすると、「要求されたタイプ ライブラリまたはウィザードは VBA プロジェクトではありません」というエラーが発生する場合がある

585デフォルトの名無しさん2022/07/20(水) 10:36:39.60ID:Rwr2SDqT
Formを変数にSetするとき下の二つのやり方のどちらが速いか試したら、結構まちまちなんですよね。
後者はEarly Bindingだと思うんだけど、ループさせると前者が速いことも結構あって不思議だ。
だれかこのあたりの事情をご存じの方いますか?

Dim F As Form
Set F = Forms!FormName

Dim F As Form_FormName
Set F = Forms!FormName

586デフォルトの名無しさん2022/07/20(水) 11:16:41.39ID:2HHkZJi9
>>584
runtime版でそれ出たな、試行錯誤でruntime2016からruntime365に変えたら動いたw事がある。

587デフォルトの名無しさん2022/07/20(水) 15:41:40.93ID:qJwz0nM8
runtimeは糞

588デフォルトの名無しさん2022/07/20(水) 18:29:58.22ID:BaO5YoZA
>>585
あってるかどうかは知らんが

!は実行時に列挙する気がするんだが
後者は型チェックと変換が入るから後者のほうが遅いと思う
前者も入るかもしれんが、そうなるとForm型とForm_FormName型でどっちのキャストが早いかで
結局やっぱり後者が遅い気がする

どっちにしたってFは型指定されているので事前バインドだが、
それが差に出るのはFのメンバーを使うときだぜ

まあ、なんにしても誤差レベルだと思うが

589デフォルトの名無しさん2022/10/28(金) 11:06:17.52ID:L4jXkRvB
PC画面のスクショを撮って、印刷させたいのですが
とっかかりすら分からない初心者です
検索しても該当サイトはなかったので
よろしければご教授願いたいです

590デフォルトの名無しさん2022/10/28(金) 12:19:16.61ID:QXDDHW1b
>>589
Windows標準の切り取り&スケッチを使えばできます
ACCESSからコントロールしたいのですか?

591デフォルトの名無しさん2022/10/28(金) 12:33:34.88ID:L4jXkRvB
>>590
はい、ExcelかAccessでとのことで、
今後の勉強含めAccessに挑んでいます。

不特定多数が使用する環境で
(リテラシーが低い人も混在)
ボタン一つで全画面スクショ印刷と
アクティブウィンドウのみスクショ印刷
の2通りできるようにしたいです
(スクショしたデータは印刷後削除される仕様にしたい)

今のところ全画面スクショはできたのですが
アクティブウィンドウと
その後の印刷と削除で、つまづいてます。

ド初心者なので、見当違いな質問をしていたら
申し訳ありません

592デフォルトの名無しさん2022/10/28(金) 12:48:59.54ID:14o/00kf
API経由で[PrtSc](全画面)、[Alt]+[PrtSc](アクティブウィンドウのみ)を押せばクリップボードに画面キャプチャができるだろうから
それをレポート上のImageに突っ込んで印刷すればいいんじゃないのかな?
試してないから実際にできるかは知らんけど

593デフォルトの名無しさん2022/10/28(金) 18:23:03.59ID:ivdM6iIS
>>592
ありがとうございます
土日に試してみます!

594デフォルトの名無しさん2022/12/09(金) 21:17:19.25ID:XI7rGRQs
サーバーから検索したいのに上手くいかない
どこか修正するとこありますか?

Private Sub CommandButton1_Click()
Const BASE_PATH = "\\L\設計\図面"Dim myPath As String, myName As String
Dim FSO As Object, oFolder As Object, oSubFolder As Object, oFile As Object
On Error Resume Next
If TextBox1.Value = ""Then Exit Sub
ListBox1.Clear
Set FSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = FSO.GetFolder(BASE_PATH)
For Each oSubFolder In oFolder.SubFolders
For Each oFile In oSubFolder.Files
If LCase(oFile.Name) Like LCase(TextBox1.Value) &"*.pdf"Then
Debug.Print oFile.Path
myPath = oFile.ParentFolder &"\"myName = oFile.Name
ListBox1.AddItem myName
ListBox1.List(ListBox1.ListCount - 1, 1) = myPath
End If
Next
Next
Set FSO = Nothing
End Sub

595デフォルトの名無しさん2022/12/10(土) 17:10:55.98ID:HwePKFIg
何がどううまくいかないんだ?
On Error Resume Next外して、エラー内容かけ

596デフォルトの名無しさん2022/12/11(日) 02:53:35.00ID:08xatqWx
知らんけど、コマンドプロンプトで取得した方が速いと思うぞ。

597デフォルトの名無しさん2022/12/11(日) 14:47:06.06ID:BK2dpDEr
ネットワークだとビックリするほど遅いよね

598デフォルトの名無しさん2022/12/21(水) 12:29:44.27ID:29nQbkr4
表形式にしたフォーム上の一行一行に対して、そのレコードのID.pdfが指定のフォルダにあれば○、無ければ空白って文字を連結したテキストボックスに入れたいんだけど。
Dir使って判定させるところまでは出来たけど、vbaを実行させるタイミングの問題なのかな?
詳細セクションの描画時選んだら代入出来ませんって出た。
試しに詳細セクションダブルクリックだと該当レコードだけは入ったけど。。

一括で全レコード対象にする方法あるんでしょうか。。?

599デフォルトの名無しさん2022/12/21(水) 13:19:20.60ID:oTvIdtcL
データシートビューのソースの段階でクエリ使ってる?
〇や(空白)を入力するフィールドは確保されてる?
元のソースにpdfファイルがあるか無いかを画面上で比較しながらひとつずつ入力するつもり?
仮のテーブル作ってフォルダ内のpdfのファイル名をDir使ってそのテーブルに代入すれば
簡単に元のソースにも反映出来ると思うけど どうしてもデータシートビューで比較しながら入れたい?

pdfが入ってるフォルダ内がしょっちゅう追加・変更・削除がある場合だとしても、仮のテーブル使っとけば
都度最新の状況での比較が可能だと思えるし、不足してるからpdf作らなきゃ、の指針にも成るような気がする
でも、元のソースに〇のフィールド作っちゃうと、pdf削除されても〇のまま消えない可能性もあるから対策必要か

つまり、一括で全レコード対象にするなら、Dir結果をcsvなりtxtなりに落とし込んで、それと元ソースで更新クエリがいちばん早い

600デフォルトの名無しさん2022/12/21(水) 14:08:13.72ID:29nQbkr4
>>599
ありがとうございます
一旦別のテーブルなりCSVなりにファイル一覧作ってみる事にします!
思い付きもしませんでした


lud20230205000545
このスレへの固定リンク: http://5chb.net/r/tech/1544620479/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「Access VBA 質問スレ Part2 YouTube動画>1本 ->画像>5枚 」を見た人も見ています:
Access VBA 質問スレ Part1
BLESS 質問スレッド Part2
Excel VBA 質問スレ Part54
Excel VBA 質問スレ Part57
Excel VBA 質問スレ Part60
Excel VBA 質問スレ Part61
Excel VBA 質問スレ Part59
Excel VBA 質問スレ Part64
Excel VBA 質問スレ Part56
Excel VBA 質問スレ Part58
Excel VBA 質問スレ Part72
Excel VBA 質問スレ Part49
【BlackDesert】黒い砂漠 質問スレ Part32
Excel VBA 質問スレ Part77
Excel VBA 質問スレ Part74
Excel VBA 質問スレ Part50
Excel VBA 質問スレ Part79(ワッチョイあり)
【TESO】The Elder Scrolls Online 質問スレ Part28
【TESO】The Elder Scrolls Online 質問スレ Part23
【TESO】The Elder Scrolls Online 質問スレ Part24
【TESO】The Elder Scrolls Online 質問スレ Part27
【TESO】The Elder Scrolls Online 質問スレ Part32
【BlackDesert】黒い砂漠 質問スレ Part18
【BlackDesert】黒い砂漠 質問スレ Part30
PSVita 質問スレ part2
iTunes 質問スレ Part14
【BlackDesert】黒い砂漠 質問スレ Part23
【BlackDesert】黒い砂漠 質問スレ Part21
【BlackDesert】黒い砂漠 質問スレ Part25
【BlackDesert】黒い砂漠 質問スレ Part29
iTunes 質問スレ Part13&#169;2ch.net・
Hearthstone: Heroes of Warcraft 質問スレ part33
Hearthstone: Heroes of Warcraft 質問スレ part41
【TESO】The Elder Scrolls Online 質問スレ Part45
【TESO】The Elder Scrolls Online 質問スレ Part39
【TESO】The Elder Scrolls Online 質問スレ Part38
【TESO】The Elder Scrolls Online 質問スレ Part30
【TESO】The Elder Scrolls Online 質問スレ Part40
【TESO】The Elder Scrolls Online 質問スレ Part36
【TESO】The Elder Scrolls Online 質問スレ Part37
【TESO】The Elder Scrolls Online 質問スレ Part46
【TESO】The Elder Scrolls Online 質問スレ Part34
【TESO質問】The Elder Scrolls Online 質問スレ Part1
【PS4】Destiny2 質問スレ part3【デスティニー】
iTunes 質問スレ Part15
Samsung Galaxy Note8 質問スレ Part2
【TESO】The Elder Scrolls Online 質問スレ Part2
Hearthstone: Heroes of Warcraft 質問スレ part21
【TESO】The Elder Scrolls Online 質問スレ Part21
The Division ディビジョン 質問スレ Part2
Hearthstone: Heroes of Warcraft 質問スレ part42
【D2R】Diablo 2 Resurrected 質問スレ Part2【リマスター】
【RIFT】 Rift: Planes of Telara 質問スレ Part5
【BlackDesert】黒い砂漠 質問スレ Part15
【BlackDesert】黒い砂漠 質問スレ Part14
iTunes 質問スレ Part18
iTunes 質問スレ Part17
Tree of Savior 質問スレ Part24
【PoE】 Path of Exile 質問スレ part28
【PoE】 Path of Exile 質問スレ part23
【PoE】 Path of Exile 質問スレ part23
【PoE】 Path of Exile 質問スレ part26
【TESO】The Elder Scrolls Online 質問スレ Part4
【TESO】The Elder Scrolls Online 質問スレ Part7
Hearthstone: Heroes of Warcraft 質問スレ part40
【TESO】The Elder Scrolls Online 質問スレ Part11
23:59:57 up 1:03, 1 user, load average: 7.22, 7.10, 6.15

in 0.93313312530518 sec @0.93313312530518@0b7 on 011313