Access VBA 質問スレ Part2 (788レス)
上下前次1-新
1(1): 2018/12/12(水)22:14 ID:GF6Qf3Td(1) AAS
Access の VBA に関する質問スレです
質問テンプレ(雛形)は用意しませんが、OSとAccessのバージョンぐらいは必ず書きましょう
前回のスレッド
Access VBA 質問スレ Part1
2chスレ:tech
708(1): 2023/10/05(木)01:14 ID:6f6nA7M7(1) AAS
>>706
CurrencyかDecimalでべき乗する関数ってどのような?
709(1): 2023/10/05(木)04:00 ID:xIPl72Do(1/2) AAS
>>708
こまかい条件省くとこんな感じじゃね
Function pow(x As Currency, y As Integer) As Variant
Dim i As Integer
Dim ret As Variant
ret = CDec(x)
For i = 1 To y - 1
省5
710: 2023/10/05(木)04:05 ID:xIPl72Do(2/2) AAS
>>707
おーぷんあーぎゅめんつ
argsはargumentsの略 引数
711: 2023/10/05(木)18:08 ID:dRlX4TIE(1) AAS
>>709
そんな低レベルな関数書いて「解決っ」とか言っちゃって時点でバカにも程がある
712: 2024/03/24(日)13:50 ID:6zfiQZRE(1/2) AAS
業務用のmdbがポンコツコードだらけなので書き換えてるんだけど、IIFが最大4個ネストしてあった。
4個ネストしてあるのは変数の値の判定が条件になっているけど、3個以下のは関数を呼び出している。
皆さんだったらどうします?
713: 2024/03/24(日)19:36 ID:S7ogYjm0(1) AAS
将来も含めてどのレベルの人がメンテしていくかだろうな
ソースの書き方も人それぞれ
例えばコメントの書き方でも、巷では行間に書くのが多いが、私は画面内に一度に表示できるロジックの行数減って見通し悪くなるから、行末側に書きたい
画面も横長だし
とか厳密に書き方決めないと人それぞれになってしまうのよね
ネストの段数にしても固定してしまうと、ムダに外出ししてしまうとかもあったり
ソースを見やすくするか、コメントで逃げるとかはもうコーティング規則にするか、それしないなら担当者判断でしかない
省1
714(2): 2024/03/24(日)22:33 ID:6zfiQZRE(2/2) AAS
とりあえず、測定用の簡単なVBAを作って、IIFのネストがどのくらい遅いのか確かめてみます。
変数の値の判定くらいなら差はほとんどないという記事を読んだことがあります。しかし、関数呼び出しをするとかなり違うという記事も読んだことがあります。
なので、呼び出された関数が10個、さらにそれぞれの関数が10個の関数を呼び出すようなコードでも書いて調べてみます。
昔Ken Getzの本を何冊か読んだ記憶ではOptimizationの章では揃ってIIfを避けるように書いてありましたね。
715(1): 2024/03/25(月)10:06 ID:wTe6l7XU(1/2) AAS
>>714
あぁ、それなら全ての条件を評価する(初期の判定で達しないとこも)から、遅くはなる
そういう弊害があるから一律使わなくするなんてことは、あったりするだろうね
そういうの見ると「はぁ⤵」って思うけど
716(1): 2024/03/25(月)15:11 ID:wTe6l7XU(2/2) AAS
>>715
ちなみにif~thenも全判定なので、iif禁止で問題解決になるわけでもない
717: 2024/03/26(火)00:35 ID:YALkMi+F(1) AAS
>>714
Access のIIFの問題は判定結果に関わらず
TrueパートとFalseパートの両方が評価(関数なら実行)されてしまう仕様
a = IIF(True, funcA, funcB)
funcAだけでなくfuncBもコールされる
aにはfuncAの戻り値が入る
関数の実装内容によってはパフォーマンスに影響が出るでしょうね
省1
718(1): 2024/03/26(火)12:43 ID:H7z+7I0f(1) AAS
>>716
if thenが全判定てなにを言っているんだ
andとorがショートサーキット演算しないだけだぞ
基本vbaはショートサーキットしない
例外はif関数ぐらいか
719: 2024/03/26(火)13:57 ID:kj3sgFU0(1) AAS
>>718
日本語理解できない、省略を補完する知識もないシナのアホが飛来したな
720(1): 2024/03/27(水)13:19 ID:BmA2tbQj(1) AAS
Select CaseはTrueが出たところで打ち切るからTrueになりそうな条件を上の方に書くべきて読んだことがあるなあ
721(1): 2024/04/19(金)10:08 ID:uD5nyH4z(1) AAS
>>720
普通の人間ならそうなるだろ?
レアパターンを先に評価するやつなんて変わり者
722(1): 2024/04/19(金)11:20 ID:TeTgAng2(1) AAS
>>721
1、2、3……順とかにするのは普通
頻度順にまではしないことも多々ある
723(1): 2024/04/25(木)00:00 ID:SJJcBnEk(1) AAS
>>722
マジックナンバーかよw
724: 2024/04/25(木)00:18 ID:9pftPPPG(1) AAS
>>723
┐(´ー`)┌
725: 2024/05/07(火)09:19 ID:dcFbjZui(1) AAS
MT4かよ
726: 2024/05/26(日)18:34 ID:TVlTpabA(1) AAS
FileSystemObjectのDeleteFolderかFolder.Delete使うと
対象フォルダーにシンボリックリンクやジャンクションあると
リンクじゃなく参照先が削除されるから気を付けた方が良いよ
定期的に掃除するログやバックアップフォルダーに
大事なフォルダーへのリンクなんか悪戯で作成されると消えちゃう
仕込まれた日と削除される日に時間差があるので追跡難しい
Defenderも気付いてくれない
省1
727: 2024/06/19(水)13:39 ID:Z4GWURaA(1) AAS
恐ろしい
そんな罠が
最近fsoの方使ってるから気をつけなければ
情報thx
728: 2024/06/21(金)17:49 ID:97rAWOJS(1) AAS
kill のが一般的だと思ってたが、そんなことは無かったのか
シンボリックリンクやジャンクション(つまりショートカット?)とかがある場合の挙動は知らないけど
比べた人が居て、ほぼおなじ動作なら kill のが楽だと
外部リンク:www.limecode.jp
729: 2024/06/21(金)18:18 ID:JmSRYM7J(1) AAS
削除の差異は意識してなかったからよくわからんけど、ファイルやフォルダの扱いがfsoの方が書きやすい、わかりやすいでこっち使い始めたかな…
再帰とかfsoの方が書きやすい(ソースがシンプル)はず…
730(1): 2024/06/21(金)21:19 ID:jAZYV/Wx(1) AAS
BASICはOSだからな
731: 2024/06/22(土)08:54 ID:wHSF3406(1) AAS
違うか フォルダの中に拡張子.lnk があるかどうか事前にチェックするべきか(他の対象外のファイルとかも
DeleteFolder や RmDir だと無条件で削除してしまうからキケンがあぶないってことか
キャベツを包丁で切ったら青虫まで一緒に切り刻んでしまいました
あらかじめ葉をむしって洗ってから切りましょう みたいなことだろうな
732: 2024/06/22(土)11:29 ID:n6A/NZx5(1) AAS
チェックするの面倒だから豆腐切れない斬鉄剣で切るんじゃないの?
733: 2024/06/22(土)11:47 ID:R3uDiOs/(1) AAS
rm -rf /
734: 2024/06/22(土)13:28 ID:AjNB02TK(1) AAS
NG🚮
735: 2024/06/22(土)13:38 ID:o/eWDsQ7(1) AAS
どっちかというとやばいのは
rm -rf *
の方だったかな
736: 2024/06/24(月)00:37 ID:sso3G8sO(1) AAS
>>730
それはBASICインタプリタが起動しているだけ
737: 2024/06/24(月)15:47 ID:W/0xkGee(1) AAS
Accessに限らんじゃん Word でも Excel でもてことだよな
Excel連中に知られたら、阿鼻叫喚の世界だな あいつら節操無いし
738: 2024/06/24(月)16:26 ID:F40a+XEU(1) AAS
知らなくても知ってたといいはるからなw
逆に知らなかったことにすることあるわ
森は大切に育てないとな
739: 2024/10/01(火)09:21 ID:TDdMwhQJ(1) AAS
Conpact & Repairを内部からVBAで命令しようと思ってAIに訊きながら何時間も格闘したあとにググったらできないことが判明した。
Claude3.5とGemini Proがここまで馬鹿とは。
何度も提案してくるけどシンタックスエラー出しまくるし。基本構文すら間違えるようでは人間プログラマーはまだまだ安泰だね。
740: 2024/12/03(火)11:46 ID:dxkeCahd(1/2) AAS
ファイルメニューのオプションで、閉じるときに最適化する を選んでおくだけでいいような
これをチェックしないまま使い続けて「壊れた」とか「容量が」とか大騒ぎする方々が多い気がする
気がするだけだけど ×Conpact ○Compact
741: 2024/12/03(火)14:00 ID:En2cnAMO(1) AAS
毎回圧縮してたらすぐ壊れるよ
742: 2024/12/03(火)16:54 ID:dxkeCahd(2/2) AAS
数十社(延べ数百台)の業務アプリこなして来たけど、そんな事例は一件たりとも経験していない
じぶんが開発用とか運用テスト用とかで仕立てて来たマシンでも、そんな事態に陥った経験は無い
圧縮と書いているけど、最適化を指定しておけば修復もするはず 修復できたものは壊れたとは呼ばない
それでも尚壊れたというなら、お作法に則って無い制作物だったとかなのかも知れない
少なくとも「すぐ壊れる」事態には陥らない
開発途中で、試行錯誤を重ねてあれこれ試してしまった ←ようなケースでも、その作業の途中で
手動で最適化する、或いは一旦閉じて最適化をさせるだけで悲劇からは回避できる
743(1): 2024/12/03(火)21:02 ID:BzSKhMhy(1) AAS
中身全部別ファイルにコピーしないと、なんて事も珍しくはないけどね
744: 2024/12/04(水)00:01 ID:hze6J6h6(1/2) AAS
運用中に壊れたことないけど、昔は開発中に度々壊れてた(壊してた)な…
昼と夜にバックアップしてた懐かしい思い出w
745: 2024/12/04(水)11:09 ID:oDv/ROvl(1) AAS
Accessが安定したのは2000くらいからだよ
746: 2024/12/04(水)11:12 ID:HphOCGl2(1) AAS
>>743
最適化は全部別ファイルにコピーしているよ
747: 2024/12/04(水)17:06 ID:ZnmFvaLG(1) AAS
ニホンゴムツカシイネ
最適化の最中は隠しファイル作ってソッチにコピーした後圧縮して、完了したら元ファイルに上書きしてる
てことを言いたいのだろうが
(おれは)最適化(したファイル)は全部別ファイルに・・とも読めて、一瞬「無駄だろ?」とか思った
748: 2024/12/04(水)20:59 ID:hze6J6h6(2/2) AAS
日本語プロパティになった時は、なんて事しやがるねんて思った
特定文字列がうまく認識されなかったり(T_T)
初心者にはわかりやすかったけれども
749: 03/28(金)20:56 ID:DlL+MxYf(1) AAS
ACCESSには散々、世話になったがもう要らないんでvisual studioにレポートとサブフォームの機能だけ移行して亡くなっていいよ
750(2): 03/29(土)13:14 ID:vo1WPeF9(1/2) AAS
ACCESSの便利さが全くわかってない素人w
あれをvsでやろうなんて全く思わない
vsでの書き方を覚えるのは不要な労力でしかない
vsでやれと言われたら従ってね。できなくはないからw
751(1): 03/29(土)13:17 ID:vo1WPeF9(2/2) AAS
>>750
ちなみに試しかけてはみたよ
ACCESS消滅するまでムダだとわかった
その頃の書き方も変わる可能性もあるし
752: 03/29(土)16:02 ID:M3jsTRd4(1) AAS
ADODBですねわかります
753: 03/30(日)08:20 ID:F3fFdGm1(1) AAS
>>750
>>751
何を一人でゴチャゴチャ言ってんだ?
754: 03/30(日)09:20 ID:bJrIExL2(1) AAS
草
755: 03/30(日)22:12 ID:GlW9emcv(1) AAS
何も言い返せない素人の捨て台詞
756: 04/01(火)08:24 ID:4aIYCmIe(1) AAS
Visual Studio って、開発環境では?
C# + Visual Studio とか .Net + Visual Studio とかのように、言語+IDEと捉えるもののような
そこへAccessのレポート組み込め、サブフォーム(←なぜサブ?)の機能加えろとか、思い違いも甚だしい
757: 04/01(火)10:39 ID:KG0zKw3F(1) AAS
昔はVSにクリスタルレポートのサブセットとかバンドルされていたからレポートほしいという要望は普通では?
自作ではページングとか面倒だし
WinFormならあるからサブなんでしょ
見せるだけならデータバインドでいいけど編集するには標準コントロールでは物足りない
Access相当の連結コントロールがタダであれば捗るとは思う
Access廃止するならコントロールライブラリを提供するぐらいやって欲しい
758(1): 04/02(水)01:27 ID:JuxZeGhm(1) AAS
クリスタルレポートはACCESSのに似てて期待したが、全然ACCESS相当まで機能追加されなかったので結局使われなかったな
(顧客へのシステムとして)
DB使わない部分では使ってたチームあったかもしれん
759: 04/02(水)12:09 ID:k9Y5euIy(1) AAS
>>758
ほんそれ
760: 04/02(水)12:27 ID:5a/oTSSC(1) AAS
クリレポ、一応はDB使った納品書かなんかで使ったわ
情報が全然なくて自分で弄りながら作ったからエラい苦労した記憶しかない
761: 04/02(水)14:23 ID:DR9S3YFG(1/2) AAS
Visual Studio の WinForms から Reportコンポーネント じゃあダメなんか?
外部リンク[html]:www.agtech.co.jp
True WinReports for .NET なんてのもあるけど、使えないのか?
外部リンク:www.componentsource.co.jp
Accessのレポートのように、微に入り細を穿つ作りはヨソのコンポーネントぢゃあ面倒 だとしても
用意されたものを使うっきゃ無いだろうに
ハナシが逸れついでにググって見ただけだから君らの一件との整合性は知らん
省2
762: 04/02(水)16:22 ID:kFN7dZ5N(1/3) AAS
クリレポを買収して中身一緒なの
763: 04/02(水)17:44 ID:DR9S3YFG(2/2) AAS
じゃあ、それで解決じゃん?困らないじゃん?
なんでわざわざAccessスレでVisual Studioのクリスタルレポートのボヤキしてるん?
764(1): 04/02(水)18:38 ID:kFN7dZ5N(2/3) AAS
そもそもAccessスレはム板には相応しくないのかもしれん
引用
未だにCrystalReportの呪いがある人でそんなたいした帳票を出してない人には選択肢の一つとなると思います。
ネットで結構有名なC#等の質問サイト等に行くとすぐに「ActiveReportを導入しなさい」的な書き込みが多く見られます。
私が昔から尊敬するネットで良く質問に答えて下さる様な人たちも同じ返答をします。
ActiveReportって結構良い値段します。
なぜMicrosoftReportなのか?
省1
765: 04/02(水)18:43 ID:kFN7dZ5N(3/3) AAS
軒並み古いな
動画リンク[YouTube]
動画リンク[YouTube]
766: 04/02(水)23:12 ID:1Uz6aYIb(1) AAS
>>764
マクロしか使ってないやつはそう考えるだろなw
767: 04/03(木)07:43 ID:LP+5khva(1) AAS
結構いい値段しようが、デベロッパーなら価格転嫁できるだろうに プライベートユースで開発してンのか?
小規模向けでぜんぶ込みで安価になんでも開発できるAccess、しかももう改良の余地も無いほどに洗練されてる(w)
こんなレガシーな開発環境他に類を見ないだろ AccessのAccessたる所以ってことで、独自の地位を確立してるでいいじゃん
768: 04/04(金)10:57 ID:22bgX6/4(1) AAS
AccessでマクロとかVBA使うより
MDEだけ使ってあとはVS(VC/VC#)だろこの板なら常考
769: 04/04(金)13:05 ID:BXxq7UNx(1) AAS
か、かんちがいしないでよね!
サーバーなんかじゃないんだから!
って言い張るためだけに存在を許されている
770: 04/04(金)13:27 ID:EKlY2S8w(1) AAS
素人が必死
771: 04/04(金)17:00 ID:W5FNOvW3(1) AAS
python良いよ
外部リンク[aspx]:www.microsoft.com
外部リンク:github.com
外部リンク:qiita.com
772: 04/04(金)17:43 ID:xkW8ZkKi(1) AAS
vbaでないならsqliteでよくない
773(4): 04/04(金)18:11 ID:VvPqqnTF(1) AAS
なら、ソッチで話題にしてりゃいいだけじゃんか
「DBなんか都合のいいのない?」「mdb・accdbでいいよ もしくはmde・accdeで」
っつーひと言で済む話
誰かがこの板にAccessスレ建てて、いくばくかの人達が参考にしてることの何がいけないんだか
Access単体で開発環境整ってるんだし、なぜことさら別のIDEの話題してんだか意味わからん
そのくせレポートがいいもの無いとか愚痴ボヤキはじめるし Accessだけなら一向に困らんのだが
774: 04/04(金)20:00 ID:uy+C0MOy(1) AAS
>>773
勝手に一人でキレてるバカ発見(笑)
775: 04/04(金)22:44 ID:GYnqFS+F(1) AAS
>>773
ほんそれ
明確にわかりやすいバカがいついてるなぁw
776: 04/05(土)08:22 ID:o7jWaKkN(1/3) AAS
>>773
お前756と同じやつ?
777(1): 04/05(土)09:07 ID:9ACWZmiM(1/2) AAS
そうです 私が756 761 763 767 773ですが、何か?
778: 04/05(土)13:04 ID:Ur9Vw4Z1(1) AAS
>>773
マクロしか使ってないやつはそう考えるだろなω
779: 04/05(土)13:33 ID:o7jWaKkN(2/3) AAS
>>777
「開発環境」の定義を自分の中で整理してから発言しろ
780(1): 04/05(土)17:37 ID:9ACWZmiM(2/2) AAS
そのぐらいエディタ(VBE)の事だとアタマの中で読み替えろ
コンパイラは不要だしデバッグもできるし 重箱の隅突っ突く事しか出来んのか
いちいち呼び止めといて用事はそれだけなのか? 鬱陶しいにも程がある 巣に帰れ
781: 04/05(土)19:57 ID:TpoqeJku(1) AAS
「DBなんか都合のいいのない?」「sqliteでいいよ もしくはsqliteで」
782(1): 04/05(土)21:16 ID:o7jWaKkN(3/3) AAS
>>780
おい、バカ
おーい、バーカ
ベーシックの勉強よりも日本語の勉強からしましょうね
定義って日本語覚えてきてね
アクセスかじったじむやさんかなんかのあいてしてるひまはえすいーのひとにはないんですよーwww
783: 04/05(土)21:23 ID:yx70iKi8(1) AAS
スレタイすら読めない馬鹿が居着いてしまったか
784: 04/05(土)23:24 ID:d+s1BeKK(1) AAS
>>782
無様なバカ
785: 04/11(金)19:36 ID:i2PY9ZNn(1) AAS
WIX
786: 04/21(月)23:53 ID:CmWZglYO(1) AAS
私はプログラマ歴20年ですが、お客様からUTF-8形式のデータを出力してほしいと言われました。
UTF-8って何ですか?
787: 04/22(火)08:27 ID:41LYkh+W(1) AAS
こないだビジネスsoft板のExcel総合相談所で話題に成った奴だな
寄せ集めの、ほぼ野良に近いデータ掻き集められたものは、文字コードがめちゃくちゃなのもあるという
TableからExcel出力とかじゃ無くて、一旦csvでUTF-8に限定して出力してみる
それを元データと比較して文字化けとかしてないことを念入りにチェックしなさいと
Excel上では見た目は見分け付かないけど、実は文字コードが全然違うものだった とかはよくあるらしい
データ入力時メイリオ使っててそれをPDF変換したものは勝手に中国語の同じ字に変換されてしまう、とか
Macで入力された文字が、Unix系で(ry とか、文字コードが勝手に変わる要因は様々らしい
省1
788: 04/23(水)09:20 ID:yoO2Q6CW(1) AAS
〜と〜
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.923s*