Access の VBA に関する質問スレです
質問テンプレ(雛形)は用意しませんが、OSとAccessのバージョンぐらいは必ず書きましょう
前回のスレッド
Access VBA 質問スレ Part1
https://mevius.5ch.net/test/read.cgi/tech/1328536426/
探検
Access VBA 質問スレ Part2
1デフォルトの名無しさん
2018/12/12(水) 22:14:39.18ID:GF6Qf3Td673デフォルトの名無しさん
2023/06/15(木) 22:46:38.48ID:VlP0x+zk クラス使わないと同じようなコードが量産されて面倒くさすぎる
674デフォルトの名無しさん
2023/06/15(木) 22:47:32.53ID:VlP0x+zk ただでさえポンコツな言語なんだから、クラスぐらい使おうよ。
675デフォルトの名無しさん
2023/06/16(金) 20:25:21.43ID:cjNqE8A3 >>673
そのせいだったのか、クラス使えば良かった
そのせいだったのか、クラス使えば良かった
676デフォルトの名無しさん
2023/06/21(水) 20:54:02.92ID:b8UND1s3 ADOでCSVからテーブルを作ろうとしたらレコードが大きすぎますって怒られるんですよ!
1レコード2000バイトも無いのにですよ!
400列くらいあるのがダメなんですか?
2013なんですが。
1レコード2000バイトも無いのにですよ!
400列くらいあるのがダメなんですか?
2013なんですが。
677デフォルトの名無しさん
2023/06/21(水) 21:15:42.66ID:gk5UG/Z5 フィールド数の上限は255だからかな
678デフォルトの名無しさん
2023/06/23(金) 13:04:47.47ID:pHYUvccd フィールド数上限は実は罠
679デフォルトの名無しさん
2023/06/23(金) 15:26:54.30ID:X84KLwiQ 過去最大のフィールド数は500
テーブル分割して収納した
テーブル分割して収納した
680デフォルトの名無しさん
2023/06/23(金) 15:42:34.83ID:jhieer6M 分割したらフィールド数じゃないな
681デフォルトの名無しさん
2023/06/23(金) 16:07:44.83ID:/GlO4XTI メモ型にコンマ付で格納
682デフォルトの名無しさん
2023/06/24(土) 09:17:24.69ID:5hQB8dV1 >>681
それに意味有るの?
それに意味有るの?
683デフォルトの名無しさん
2023/06/26(月) 19:43:31.70ID:nvUGoLmX Access2019でリボン非表示にするのは、どうするの?
684デフォルトの名無しさん
2023/06/26(月) 20:17:04.89ID:nvUGoLmX >>683
細工されないようにXMLで記述したい
細工されないようにXMLで記述したい
685デフォルトの名無しさん
2023/06/26(月) 21:25:45.94ID:Ezf4n+79 XML???
VBAでなら
DoCmd.ShowToolbar "Ribbon", acToolbarNo
ってのがあるが
VBAでなら
DoCmd.ShowToolbar "Ribbon", acToolbarNo
ってのがあるが
686デフォルトの名無しさん
2023/06/27(火) 08:56:44.60ID:5UYjwK7S それだと使用者に解除されちゃうので、XMLで空のカスタムリボン作って、オプション→現在のデータベース→リボンとツールバーのオプションに設定したいんよ
Access2019だとスクラッチからリボン作ってもファイルボタンが残っちゃうのが解ったので、それで我慢する
Access2019だとスクラッチからリボン作ってもファイルボタンが残っちゃうのが解ったので、それで我慢する
687デフォルトの名無しさん
2023/09/14(木) 09:18:05.95ID:t/htNvkA サブフォームをもつフォームにおいて、
親フォーム側から
Me.サブフォーム.Requery
を実行すると、サブフォームのCurrentイベントが2回発生するんだけど、なんでなんだろ?
親フォーム側から
Me.サブフォーム.Requery
を実行すると、サブフォームのCurrentイベントが2回発生するんだけど、なんでなんだろ?
688デフォルトの名無しさん
2023/09/14(木) 10:41:11.21ID:UPFEbPP4 大抵はそう組まれているからそう動作する
親フォームからひとつずつチェックしてみれば「あぁ、ここか」が出てきたりする
親フォームからひとつずつチェックしてみれば「あぁ、ここか」が出てきたりする
689デフォルトの名無しさん
2023/09/14(木) 10:50:23.10ID:t/htNvkA >>688
検証のために、メインフォーム上ににサブフォームとサブフォームをRequeryさせるだけのボタンの最小限の構成にしても
687で書いた現象が発生している(サブフォーム側はCurrentイベントにdebug.printを書いただけ)
私は何か根本的な勘違いをしているのだろうか?それともAccessの仕様なのだろうか?
検証のために、メインフォーム上ににサブフォームとサブフォームをRequeryさせるだけのボタンの最小限の構成にしても
687で書いた現象が発生している(サブフォーム側はCurrentイベントにdebug.printを書いただけ)
私は何か根本的な勘違いをしているのだろうか?それともAccessの仕様なのだろうか?
690デフォルトの名無しさん
2023/09/14(木) 12:58:11.51ID:UPFEbPP4 フォームをデザインビューにした時に出て来るプロパティシート
おおむかし、あの枠が狭くて知らぬ間に二行に記載していたことは稀によくあった
Excelで言う、セル内改行をやってしまっていた 見た目はいっこなので気付きにくい
或いは、サブフォームをよりシンプルなものでテストするとか
仕様なら同様の質問疑問がてんこ盛りに投稿されるはず
と思って探ってみたら、こんなのが・・
http://yamav102.cocolog-nifty.com/blog/2015/05/from_current-96.html これ系?
おおむかし、あの枠が狭くて知らぬ間に二行に記載していたことは稀によくあった
Excelで言う、セル内改行をやってしまっていた 見た目はいっこなので気付きにくい
或いは、サブフォームをよりシンプルなものでテストするとか
仕様なら同様の質問疑問がてんこ盛りに投稿されるはず
と思って探ってみたら、こんなのが・・
http://yamav102.cocolog-nifty.com/blog/2015/05/from_current-96.html これ系?
691デフォルトの名無しさん
2023/09/14(木) 13:40:41.27ID:t/htNvkA >>690
サブフォームは新規作成した状態のものにCurrentイベントにdebug.print書いただけのものでも2回発生してるのよ
提示していただいたページはこちらで調べたときに見ていますが、そのページで書かれてるのは自分自身に対するRequeryのようなのでちょっと事情が違うようです
frmMain
------------------
Option Compare Database
Option Explicit
Private Sub btnRequery_Click()
Debug.Print "clicked ------"
Me.frmSub.Requery
Debug.Print "--------------"
End Sub
--------------------
frmSub
--------------------
Option Compare Database
Option Explicit
Private Sub Form_Current()
Debug.Print "frmSub Form_Current"
End Sub
---------------------
こんなかんじの検証用のを用意
サブフォームは新規作成した状態のものにCurrentイベントにdebug.print書いただけのものでも2回発生してるのよ
提示していただいたページはこちらで調べたときに見ていますが、そのページで書かれてるのは自分自身に対するRequeryのようなのでちょっと事情が違うようです
frmMain
------------------
Option Compare Database
Option Explicit
Private Sub btnRequery_Click()
Debug.Print "clicked ------"
Me.frmSub.Requery
Debug.Print "--------------"
End Sub
--------------------
frmSub
--------------------
Option Compare Database
Option Explicit
Private Sub Form_Current()
Debug.Print "frmSub Form_Current"
End Sub
---------------------
こんなかんじの検証用のを用意
692デフォルトの名無しさん
2023/09/14(木) 13:41:20.11ID:t/htNvkA んで、実行結果(イミディエイトウィンドウ)が
clicked ------
frmSub Form_Current
frmSub Form_Current
--------------
clicked ------
frmSub Form_Current
frmSub Form_Current
--------------
693デフォルトの名無しさん
2023/09/14(木) 14:52:05.24ID:UPFEbPP4 イメージだけで応答してたから、どうにもとっ散らかってた 現物当たって真似してみた
https://learn.microsoft.com/ja-jp/office/vba/api/access.form.current
このイベントは、フォームが開いたときと、フォーカスがレコード間を移動したときの
いずれの場合にも発生します。
複数回発生して当たり前だった
Form_Load (読み込み時) 或いは Form_Abtivate (アクティブ時) に変えればおk
どうしてもForm_Current (レコード移動時)に設定したい場合は見て見ぬ振りをするしか
https://learn.microsoft.com/ja-jp/office/vba/api/access.form.current
このイベントは、フォームが開いたときと、フォーカスがレコード間を移動したときの
いずれの場合にも発生します。
複数回発生して当たり前だった
Form_Load (読み込み時) 或いは Form_Abtivate (アクティブ時) に変えればおk
どうしてもForm_Current (レコード移動時)に設定したい場合は見て見ぬ振りをするしか
694デフォルトの名無しさん
2023/09/14(木) 15:04:03.08ID:t/htNvkA695デフォルトの名無しさん
2023/09/14(木) 16:54:04.40ID:UPFEbPP4 btnRequery をクリックしても Requery できない?という意味?
Me.frmSub.Requery を Me!frmSub.Form.Requery にしてみては?
Me. か Me! かでも変わって来るし、.Form を付ける付けないでも挙動が変わったような
あと、frmMain を開いただけでも frmSub Form_Current が発生するのも違う気がするし
frmMain でパラメータ変えて frmSub を Requery させたいとかなら
https://teratail.com/questions/123328 このhatenaさんの回答を参考にしてみたり
Docmd.Requery でやっつけてみたり Requeryの使い方もクセがあるので切磋琢磨が
必要だったり
Me.frmSub.Requery を Me!frmSub.Form.Requery にしてみては?
Me. か Me! かでも変わって来るし、.Form を付ける付けないでも挙動が変わったような
あと、frmMain を開いただけでも frmSub Form_Current が発生するのも違う気がするし
frmMain でパラメータ変えて frmSub を Requery させたいとかなら
https://teratail.com/questions/123328 このhatenaさんの回答を参考にしてみたり
Docmd.Requery でやっつけてみたり Requeryの使い方もクセがあるので切磋琢磨が
必要だったり
696デフォルトの名無しさん
2023/09/14(木) 17:08:38.96ID:t/htNvkA >>695
frmSubはfrmMainに貼り付けられているのでfrmMainを開くと当然frmSubも開かれるので、
Open, Load, Current等のイベントはひととおり発生します(仕様通り)
これについては特に問題ではありません
問題にしているのはbtnRequeryをクリックしたときに、Me.frmSub.Requeryを一度しか呼んでいないのに
frmSubのCurrentイベントが二度発生していることです
紹介いただいたteratailのページを参考にあれこれ試してみたいと思います
frmSubはfrmMainに貼り付けられているのでfrmMainを開くと当然frmSubも開かれるので、
Open, Load, Current等のイベントはひととおり発生します(仕様通り)
これについては特に問題ではありません
問題にしているのはbtnRequeryをクリックしたときに、Me.frmSub.Requeryを一度しか呼んでいないのに
frmSubのCurrentイベントが二度発生していることです
紹介いただいたteratailのページを参考にあれこれ試してみたいと思います
697デフォルトの名無しさん
2023/09/14(木) 21:20:00.47ID:dY8DD9uu AccessにGROUP_CONCATみたいなのなかった?
698デフォルトの名無しさん
2023/09/14(木) 23:10:56.65ID:kQn+Df7T699デフォルトの名無しさん
2023/09/15(金) 08:38:48.79ID:cxAk3WqI700デフォルトの名無しさん
2023/10/03(火) 11:54:07.91ID:BE4+HOMv ちょっと不思議な話
よくある数値の切捨て処理のfunctionとして
Function RoundDownDec(decNum as Currency, intPlace as Integer) as Currency
RoundDownDec = Fix(decNum * 10 ^ intPlace) / 10 ^ intPlace
End Function
処理したいデータの都合で与える数値も戻り値も十進型としています
(正負の処理などは今回の本題から外れるので例からは省いています)
RoundDownDec(33.6, 2) としたときに、33.6が返ってくるのを期待しますが33.59が返ってきます
不思議!
functionの中身を
Dim tmp As Currency
tmp = Fix(decNum * 10 ^ intPlace)
Debug.Print tmp
RoundDownDec = tmp / 10 ^ intPlace
と段階を踏ませるとイミディエイトウィンドウに3359が出るので更に
tmp = decNum * 10 ^ intPlace
tmp = Fix(tmp)
と分解すると、期待通りの結果(33.6)が得られます
Fix()の引数はdoubleなんで、暗黙的な型変換が行われているせいなんだろうけれど、微妙に納得がいかない不思議な話でした
よくある数値の切捨て処理のfunctionとして
Function RoundDownDec(decNum as Currency, intPlace as Integer) as Currency
RoundDownDec = Fix(decNum * 10 ^ intPlace) / 10 ^ intPlace
End Function
処理したいデータの都合で与える数値も戻り値も十進型としています
(正負の処理などは今回の本題から外れるので例からは省いています)
RoundDownDec(33.6, 2) としたときに、33.6が返ってくるのを期待しますが33.59が返ってきます
不思議!
functionの中身を
Dim tmp As Currency
tmp = Fix(decNum * 10 ^ intPlace)
Debug.Print tmp
RoundDownDec = tmp / 10 ^ intPlace
と段階を踏ませるとイミディエイトウィンドウに3359が出るので更に
tmp = decNum * 10 ^ intPlace
tmp = Fix(tmp)
と分解すると、期待通りの結果(33.6)が得られます
Fix()の引数はdoubleなんで、暗黙的な型変換が行われているせいなんだろうけれど、微妙に納得がいかない不思議な話でした
701デフォルトの名無しさん
2023/10/03(火) 11:59:45.89ID:BE4+HOMv ちなみに蛇足ですが、普通に
Function RoundDown(dblNum As Double, intPlace As Integer) As Double
とdoubleを引数にした場合は、特別なことをしなくても RoundDown(33.6, 2) の結果は33.6となります
Function RoundDown(dblNum As Double, intPlace As Integer) As Double
とdoubleを引数にした場合は、特別なことをしなくても RoundDown(33.6, 2) の結果は33.6となります
702デフォルトの名無しさん
2023/10/04(水) 10:07:17.16ID:e9fui2Qq 浮動小数点を経由するので誤差から免れることはできません(以下はイミディエイト ウィンドウでの実行と結果)
? Fix(33.6 * 10 ^ 2), Fix(33.6@ * 10 ^ 2), Fix(33.6! * 10 ^ 2)
3360 3359 3359
単精度でも同様
? Fix(33.6@ * 10 ^ 2) / 100, Fix(CCur(33.6@ * 10 ^ 2)) / 100, Fix(33.6@ * 100) / 100
33.59 33.6 33.6
べき乗を使うことが誤差を生む原因の一部でもあったりするので、CCur()で一度補正?したりで影響を減らすとかも考えられます。
? Fix(33.6 * 10 ^ 2), Fix(33.6@ * 10 ^ 2), Fix(33.6! * 10 ^ 2)
3360 3359 3359
単精度でも同様
? Fix(33.6@ * 10 ^ 2) / 100, Fix(CCur(33.6@ * 10 ^ 2)) / 100, Fix(33.6@ * 100) / 100
33.59 33.6 33.6
べき乗を使うことが誤差を生む原因の一部でもあったりするので、CCur()で一度補正?したりで影響を減らすとかも考えられます。
703デフォルトの名無しさん
2023/10/04(水) 10:57:33.10ID:95ZKO4kH 検証ありがとうございます
浮動小数点を経由するので誤差がでるのは理屈としては理解できるのですが、
わざわざ十進型を使ってるのに…というのや、Fix()に渡される式の結果ではなく、
渡された段階で暗黙的な型変換が行われているっぽいのが腑に落ちなさの一因なのでしょう
浮動小数点を経由するので誤差がでるのは理屈としては理解できるのですが、
わざわざ十進型を使ってるのに…というのや、Fix()に渡される式の結果ではなく、
渡された段階で暗黙的な型変換が行われているっぽいのが腑に落ちなさの一因なのでしょう
704デフォルトの名無しさん
2023/10/04(水) 14:52:16.68ID:e9fui2Qq ? Fix(33.6@ * 10 ^ 2) , Fix(33.6@ * 100)
3359 3360
の結果からもわかるように、今回の場合は 10 ^ 2 の値が浮動小数点であり ≠100 である
ということです
なので「33.6@ * 浮動小数点」は33.6@を浮動小数点として計算する(はず)ので、その結果が
許容できない値になってしまったと
対策として CCur(33.6@ * 10 ^ 2)で本来の値に近くなるように書きましたが、
べき乗の部分を一度整数変数に代入してから「33.6@ * 整数変数」の形にしてもいいと思います(未検証)
この場合、通貨型は内部整数 * 整数なのでここまでの計算結果に誤差はでません。(乗数マイナスは別)
RoundDownDec()を大量に使用する場合はパフォーマンスも考慮しないといけませんが、乗数を整数変数経由に
する方が CCur()関数使うより早いのではと思います(昔、関数使うと遅いなと思った経験)。
100万回くらい(適当)ループして検証してみてください。
3359 3360
の結果からもわかるように、今回の場合は 10 ^ 2 の値が浮動小数点であり ≠100 である
ということです
なので「33.6@ * 浮動小数点」は33.6@を浮動小数点として計算する(はず)ので、その結果が
許容できない値になってしまったと
対策として CCur(33.6@ * 10 ^ 2)で本来の値に近くなるように書きましたが、
べき乗の部分を一度整数変数に代入してから「33.6@ * 整数変数」の形にしてもいいと思います(未検証)
この場合、通貨型は内部整数 * 整数なのでここまでの計算結果に誤差はでません。(乗数マイナスは別)
RoundDownDec()を大量に使用する場合はパフォーマンスも考慮しないといけませんが、乗数を整数変数経由に
する方が CCur()関数使うより早いのではと思います(昔、関数使うと遅いなと思った経験)。
100万回くらい(適当)ループして検証してみてください。
705デフォルトの名無しさん
2023/10/04(水) 15:22:35.37ID:95ZKO4kH 更なる解説ありがとうございます
? TypeName(10^2)
Double
正直これは盲点でした
原因がはっきりわかりすっきりしました
ありがとうございます
? TypeName(10^2)
Double
正直これは盲点でした
原因がはっきりわかりすっきりしました
ありがとうございます
706デフォルトの名無しさん
2023/10/04(水) 21:35:38.35ID:GiHPLbjK VBAの内部計算につかう型は結構複雑な変換をする
33.6@ * 整数変数の結果は、Currency型だぜ
多くの関数や演算子で、より精度の高い型を使おうとするんだが、べき乗はDoubleしか返さん仕様っぽいな
自分でCurrencyかDecimalでべき乗する関数作れば解決
33.6@ * 整数変数の結果は、Currency型だぜ
多くの関数や演算子で、より精度の高い型を使おうとするんだが、べき乗はDoubleしか返さん仕様っぽいな
自分でCurrencyかDecimalでべき乗する関数作れば解決
707デフォルトの名無しさん
2023/10/04(水) 23:36:55.88ID:hn2MViTp OpenArgsってなんて読んでますか?
何の単語の略なんでしょうか
ご存じのかた教えてください
何の単語の略なんでしょうか
ご存じのかた教えてください
708デフォルトの名無しさん
2023/10/05(木) 01:14:56.61ID:6f6nA7M7 >>706
CurrencyかDecimalでべき乗する関数ってどのような?
CurrencyかDecimalでべき乗する関数ってどのような?
709デフォルトの名無しさん
2023/10/05(木) 04:00:15.23ID:xIPl72Do >>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
ret = ret * CDec(x)
Next
pow = ret
End Function
Decimalは直接定義できないからVariantで宣言してる
こまかい条件省くとこんな感じじゃね
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
ret = ret * CDec(x)
Next
pow = ret
End Function
Decimalは直接定義できないからVariantで宣言してる
710デフォルトの名無しさん
2023/10/05(木) 04:05:04.32ID:xIPl72Do711デフォルトの名無しさん
2023/10/05(木) 18:08:52.91ID:dRlX4TIE >>709
そんな低レベルな関数書いて「解決っ」とか言っちゃって時点でバカにも程がある
そんな低レベルな関数書いて「解決っ」とか言っちゃって時点でバカにも程がある
712デフォルトの名無しさん
2024/03/24(日) 13:50:16.81ID:6zfiQZRE 業務用のmdbがポンコツコードだらけなので書き換えてるんだけど、IIFが最大4個ネストしてあった。
4個ネストしてあるのは変数の値の判定が条件になっているけど、3個以下のは関数を呼び出している。
皆さんだったらどうします?
4個ネストしてあるのは変数の値の判定が条件になっているけど、3個以下のは関数を呼び出している。
皆さんだったらどうします?
713デフォルトの名無しさん
2024/03/24(日) 19:36:20.19ID:S7ogYjm0 将来も含めてどのレベルの人がメンテしていくかだろうな
ソースの書き方も人それぞれ
例えばコメントの書き方でも、巷では行間に書くのが多いが、私は画面内に一度に表示できるロジックの行数減って見通し悪くなるから、行末側に書きたい
画面も横長だし
とか厳密に書き方決めないと人それぞれになってしまうのよね
ネストの段数にしても固定してしまうと、ムダに外出ししてしまうとかもあったり
ソースを見やすくするか、コメントで逃げるとかはもうコーティング規則にするか、それしないなら担当者判断でしかない
iifもネストなんて場合によりどちらでもいい
ソースの書き方も人それぞれ
例えばコメントの書き方でも、巷では行間に書くのが多いが、私は画面内に一度に表示できるロジックの行数減って見通し悪くなるから、行末側に書きたい
画面も横長だし
とか厳密に書き方決めないと人それぞれになってしまうのよね
ネストの段数にしても固定してしまうと、ムダに外出ししてしまうとかもあったり
ソースを見やすくするか、コメントで逃げるとかはもうコーティング規則にするか、それしないなら担当者判断でしかない
iifもネストなんて場合によりどちらでもいい
714デフォルトの名無しさん
2024/03/24(日) 22:33:27.39ID:6zfiQZRE とりあえず、測定用の簡単なVBAを作って、IIFのネストがどのくらい遅いのか確かめてみます。
変数の値の判定くらいなら差はほとんどないという記事を読んだことがあります。しかし、関数呼び出しをするとかなり違うという記事も読んだことがあります。
なので、呼び出された関数が10個、さらにそれぞれの関数が10個の関数を呼び出すようなコードでも書いて調べてみます。
昔Ken Getzの本を何冊か読んだ記憶ではOptimizationの章では揃ってIIfを避けるように書いてありましたね。
変数の値の判定くらいなら差はほとんどないという記事を読んだことがあります。しかし、関数呼び出しをするとかなり違うという記事も読んだことがあります。
なので、呼び出された関数が10個、さらにそれぞれの関数が10個の関数を呼び出すようなコードでも書いて調べてみます。
昔Ken Getzの本を何冊か読んだ記憶ではOptimizationの章では揃ってIIfを避けるように書いてありましたね。
715デフォルトの名無しさん
2024/03/25(月) 10:06:54.06ID:wTe6l7XU >>714
あぁ、それなら全ての条件を評価する(初期の判定で達しないとこも)から、遅くはなる
そういう弊害があるから一律使わなくするなんてことは、あったりするだろうね
そういうの見ると「はぁ⤵」って思うけど
あぁ、それなら全ての条件を評価する(初期の判定で達しないとこも)から、遅くはなる
そういう弊害があるから一律使わなくするなんてことは、あったりするだろうね
そういうの見ると「はぁ⤵」って思うけど
716デフォルトの名無しさん
2024/03/25(月) 15:11:37.51ID:wTe6l7XU >>715
ちなみにif~thenも全判定なので、iif禁止で問題解決になるわけでもない
ちなみにif~thenも全判定なので、iif禁止で問題解決になるわけでもない
717デフォルトの名無しさん
2024/03/26(火) 00:35:40.91ID:YALkMi+F >>714
Access のIIFの問題は判定結果に関わらず
TrueパートとFalseパートの両方が評価(関数なら実行)されてしまう仕様
a = IIF(True, funcA, funcB)
funcAだけでなくfuncBもコールされる
aにはfuncAの戻り値が入る
関数の実装内容によってはパフォーマンスに影響が出るでしょうね
IFではどちらか一方のみ結果パートが評価されます
Access のIIFの問題は判定結果に関わらず
TrueパートとFalseパートの両方が評価(関数なら実行)されてしまう仕様
a = IIF(True, funcA, funcB)
funcAだけでなくfuncBもコールされる
aにはfuncAの戻り値が入る
関数の実装内容によってはパフォーマンスに影響が出るでしょうね
IFではどちらか一方のみ結果パートが評価されます
718デフォルトの名無しさん
2024/03/26(火) 12:43:56.27ID:H7z+7I0f719デフォルトの名無しさん
2024/03/26(火) 13:57:38.44ID:kj3sgFU0 >>718
日本語理解できない、省略を補完する知識もないシナのアホが飛来したな
日本語理解できない、省略を補完する知識もないシナのアホが飛来したな
720デフォルトの名無しさん
2024/03/27(水) 13:19:17.09ID:BmA2tbQj Select CaseはTrueが出たところで打ち切るからTrueになりそうな条件を上の方に書くべきて読んだことがあるなあ
721デフォルトの名無しさん
2024/04/19(金) 10:08:55.39ID:uD5nyH4z722デフォルトの名無しさん
2024/04/19(金) 11:20:47.33ID:TeTgAng2723デフォルトの名無しさん
2024/04/25(木) 00:00:11.21ID:SJJcBnEk >>722
マジックナンバーかよw
マジックナンバーかよw
724デフォルトの名無しさん
2024/04/25(木) 00:18:38.90ID:9pftPPPG >>723
┐(´ー`)┌
┐(´ー`)┌
725デフォルトの名無しさん
2024/05/07(火) 09:19:02.24ID:dcFbjZui MT4かよ
726デフォルトの名無しさん
2024/05/26(日) 18:34:28.21ID:TVlTpabA FileSystemObjectのDeleteFolderかFolder.Delete使うと
対象フォルダーにシンボリックリンクやジャンクションあると
リンクじゃなく参照先が削除されるから気を付けた方が良いよ
定期的に掃除するログやバックアップフォルダーに
大事なフォルダーへのリンクなんか悪戯で作成されると消えちゃう
仕込まれた日と削除される日に時間差があるので追跡難しい
Defenderも気付いてくれない
フォルダーの削除はRmDirにしとき
対象フォルダーにシンボリックリンクやジャンクションあると
リンクじゃなく参照先が削除されるから気を付けた方が良いよ
定期的に掃除するログやバックアップフォルダーに
大事なフォルダーへのリンクなんか悪戯で作成されると消えちゃう
仕込まれた日と削除される日に時間差があるので追跡難しい
Defenderも気付いてくれない
フォルダーの削除はRmDirにしとき
727デフォルトの名無しさん
2024/06/19(水) 13:39:07.69ID:Z4GWURaA 恐ろしい
そんな罠が
最近fsoの方使ってるから気をつけなければ
情報thx
そんな罠が
最近fsoの方使ってるから気をつけなければ
情報thx
728デフォルトの名無しさん
2024/06/21(金) 17:49:43.88ID:97rAWOJS kill のが一般的だと思ってたが、そんなことは無かったのか
シンボリックリンクやジャンクション(つまりショートカット?)とかがある場合の挙動は知らないけど
比べた人が居て、ほぼおなじ動作なら kill のが楽だと
tps://www.limecode.jp/entry/difference/kill-deletefile
シンボリックリンクやジャンクション(つまりショートカット?)とかがある場合の挙動は知らないけど
比べた人が居て、ほぼおなじ動作なら kill のが楽だと
tps://www.limecode.jp/entry/difference/kill-deletefile
729デフォルトの名無しさん
2024/06/21(金) 18:18:10.26ID:JmSRYM7J 削除の差異は意識してなかったからよくわからんけど、ファイルやフォルダの扱いがfsoの方が書きやすい、わかりやすいでこっち使い始めたかな…
再帰とかfsoの方が書きやすい(ソースがシンプル)はず…
再帰とかfsoの方が書きやすい(ソースがシンプル)はず…
730デフォルトの名無しさん
2024/06/21(金) 21:19:36.24ID:jAZYV/Wx BASICはOSだからな
731デフォルトの名無しさん
2024/06/22(土) 08:54:35.35ID:wHSF3406 違うか フォルダの中に拡張子.lnk があるかどうか事前にチェックするべきか(他の対象外のファイルとかも
DeleteFolder や RmDir だと無条件で削除してしまうからキケンがあぶないってことか
キャベツを包丁で切ったら青虫まで一緒に切り刻んでしまいました
あらかじめ葉をむしって洗ってから切りましょう みたいなことだろうな
DeleteFolder や RmDir だと無条件で削除してしまうからキケンがあぶないってことか
キャベツを包丁で切ったら青虫まで一緒に切り刻んでしまいました
あらかじめ葉をむしって洗ってから切りましょう みたいなことだろうな
732デフォルトの名無しさん
2024/06/22(土) 11:29:50.78ID:n6A/NZx5 チェックするの面倒だから豆腐切れない斬鉄剣で切るんじゃないの?
733デフォルトの名無しさん
2024/06/22(土) 11:47:45.85ID:R3uDiOs/ rm -rf /
734デフォルトの名無しさん
2024/06/22(土) 13:28:14.09ID:AjNB02TK NG🚮
735デフォルトの名無しさん
2024/06/22(土) 13:38:00.95ID:o/eWDsQ7 どっちかというとやばいのは
rm -rf *
の方だったかな
rm -rf *
の方だったかな
736デフォルトの名無しさん
2024/06/24(月) 00:37:34.39ID:sso3G8sO >>730
それはBASICインタプリタが起動しているだけ
それはBASICインタプリタが起動しているだけ
737デフォルトの名無しさん
2024/06/24(月) 15:47:37.22ID:W/0xkGee Accessに限らんじゃん Word でも Excel でもてことだよな
Excel連中に知られたら、阿鼻叫喚の世界だな あいつら節操無いし
Excel連中に知られたら、阿鼻叫喚の世界だな あいつら節操無いし
738デフォルトの名無しさん
2024/06/24(月) 16:26:48.42ID:F40a+XEU 知らなくても知ってたといいはるからなw
逆に知らなかったことにすることあるわ
森は大切に育てないとな
逆に知らなかったことにすることあるわ
森は大切に育てないとな
739デフォルトの名無しさん
2024/10/01(火) 09:21:59.28ID:TDdMwhQJ Conpact & Repairを内部からVBAで命令しようと思ってAIに訊きながら何時間も格闘したあとにググったらできないことが判明した。
Claude3.5とGemini Proがここまで馬鹿とは。
何度も提案してくるけどシンタックスエラー出しまくるし。基本構文すら間違えるようでは人間プログラマーはまだまだ安泰だね。
Claude3.5とGemini Proがここまで馬鹿とは。
何度も提案してくるけどシンタックスエラー出しまくるし。基本構文すら間違えるようでは人間プログラマーはまだまだ安泰だね。
740デフォルトの名無しさん
2024/12/03(火) 11:46:34.24ID:dxkeCahd ファイルメニューのオプションで、閉じるときに最適化する を選んでおくだけでいいような
これをチェックしないまま使い続けて「壊れた」とか「容量が」とか大騒ぎする方々が多い気がする
気がするだけだけど ×Conpact ○Compact
これをチェックしないまま使い続けて「壊れた」とか「容量が」とか大騒ぎする方々が多い気がする
気がするだけだけど ×Conpact ○Compact
741デフォルトの名無しさん
2024/12/03(火) 14:00:15.98ID:En2cnAMO 毎回圧縮してたらすぐ壊れるよ
742デフォルトの名無しさん
2024/12/03(火) 16:54:24.51ID:dxkeCahd 数十社(延べ数百台)の業務アプリこなして来たけど、そんな事例は一件たりとも経験していない
じぶんが開発用とか運用テスト用とかで仕立てて来たマシンでも、そんな事態に陥った経験は無い
圧縮と書いているけど、最適化を指定しておけば修復もするはず 修復できたものは壊れたとは呼ばない
それでも尚壊れたというなら、お作法に則って無い制作物だったとかなのかも知れない
少なくとも「すぐ壊れる」事態には陥らない
開発途中で、試行錯誤を重ねてあれこれ試してしまった ←ようなケースでも、その作業の途中で
手動で最適化する、或いは一旦閉じて最適化をさせるだけで悲劇からは回避できる
じぶんが開発用とか運用テスト用とかで仕立てて来たマシンでも、そんな事態に陥った経験は無い
圧縮と書いているけど、最適化を指定しておけば修復もするはず 修復できたものは壊れたとは呼ばない
それでも尚壊れたというなら、お作法に則って無い制作物だったとかなのかも知れない
少なくとも「すぐ壊れる」事態には陥らない
開発途中で、試行錯誤を重ねてあれこれ試してしまった ←ようなケースでも、その作業の途中で
手動で最適化する、或いは一旦閉じて最適化をさせるだけで悲劇からは回避できる
743デフォルトの名無しさん
2024/12/03(火) 21:02:10.99ID:BzSKhMhy 中身全部別ファイルにコピーしないと、なんて事も珍しくはないけどね
744デフォルトの名無しさん
2024/12/04(水) 00:01:04.29ID:hze6J6h6 運用中に壊れたことないけど、昔は開発中に度々壊れてた(壊してた)な…
昼と夜にバックアップしてた懐かしい思い出w
昼と夜にバックアップしてた懐かしい思い出w
745デフォルトの名無しさん
2024/12/04(水) 11:09:06.60ID:oDv/ROvl Accessが安定したのは2000くらいからだよ
746デフォルトの名無しさん
2024/12/04(水) 11:12:46.01ID:HphOCGl2 >>743
最適化は全部別ファイルにコピーしているよ
最適化は全部別ファイルにコピーしているよ
747デフォルトの名無しさん
2024/12/04(水) 17:06:47.73ID:ZnmFvaLG ニホンゴムツカシイネ
最適化の最中は隠しファイル作ってソッチにコピーした後圧縮して、完了したら元ファイルに上書きしてる
てことを言いたいのだろうが
(おれは)最適化(したファイル)は全部別ファイルに・・とも読めて、一瞬「無駄だろ?」とか思った
最適化の最中は隠しファイル作ってソッチにコピーした後圧縮して、完了したら元ファイルに上書きしてる
てことを言いたいのだろうが
(おれは)最適化(したファイル)は全部別ファイルに・・とも読めて、一瞬「無駄だろ?」とか思った
748デフォルトの名無しさん
2024/12/04(水) 20:59:10.46ID:hze6J6h6 日本語プロパティになった時は、なんて事しやがるねんて思った
特定文字列がうまく認識されなかったり(T_T)
初心者にはわかりやすかったけれども
特定文字列がうまく認識されなかったり(T_T)
初心者にはわかりやすかったけれども
749デフォルトの名無しさん
2025/03/28(金) 20:56:49.89ID:DlL+MxYf ACCESSには散々、世話になったがもう要らないんでvisual studioにレポートとサブフォームの機能だけ移行して亡くなっていいよ
750デフォルトの名無しさん
2025/03/29(土) 13:14:03.44ID:vo1WPeF9 ACCESSの便利さが全くわかってない素人w
あれをvsでやろうなんて全く思わない
vsでの書き方を覚えるのは不要な労力でしかない
vsでやれと言われたら従ってね。できなくはないからw
あれをvsでやろうなんて全く思わない
vsでの書き方を覚えるのは不要な労力でしかない
vsでやれと言われたら従ってね。できなくはないからw
751デフォルトの名無しさん
2025/03/29(土) 13:17:20.16ID:vo1WPeF9752デフォルトの名無しさん
2025/03/29(土) 16:02:13.66ID:M3jsTRd4 ADODBですねわかります
753デフォルトの名無しさん
2025/03/30(日) 08:20:15.93ID:F3fFdGm1754デフォルトの名無しさん
2025/03/30(日) 09:20:48.46ID:bJrIExL2 草
755デフォルトの名無しさん
2025/03/30(日) 22:12:48.36ID:GlW9emcv 何も言い返せない素人の捨て台詞
756デフォルトの名無しさん
2025/04/01(火) 08:24:46.89ID:4aIYCmIe Visual Studio って、開発環境では?
C# + Visual Studio とか .Net + Visual Studio とかのように、言語+IDEと捉えるもののような
そこへAccessのレポート組み込め、サブフォーム(←なぜサブ?)の機能加えろとか、思い違いも甚だしい
C# + Visual Studio とか .Net + Visual Studio とかのように、言語+IDEと捉えるもののような
そこへAccessのレポート組み込め、サブフォーム(←なぜサブ?)の機能加えろとか、思い違いも甚だしい
757デフォルトの名無しさん
2025/04/01(火) 10:39:47.09ID:KG0zKw3F 昔はVSにクリスタルレポートのサブセットとかバンドルされていたからレポートほしいという要望は普通では?
自作ではページングとか面倒だし
WinFormならあるからサブなんでしょ
見せるだけならデータバインドでいいけど編集するには標準コントロールでは物足りない
Access相当の連結コントロールがタダであれば捗るとは思う
Access廃止するならコントロールライブラリを提供するぐらいやって欲しい
自作ではページングとか面倒だし
WinFormならあるからサブなんでしょ
見せるだけならデータバインドでいいけど編集するには標準コントロールでは物足りない
Access相当の連結コントロールがタダであれば捗るとは思う
Access廃止するならコントロールライブラリを提供するぐらいやって欲しい
758デフォルトの名無しさん
2025/04/02(水) 01:27:05.55ID:JuxZeGhm クリスタルレポートはACCESSのに似てて期待したが、全然ACCESS相当まで機能追加されなかったので結局使われなかったな
(顧客へのシステムとして)
DB使わない部分では使ってたチームあったかもしれん
(顧客へのシステムとして)
DB使わない部分では使ってたチームあったかもしれん
759デフォルトの名無しさん
2025/04/02(水) 12:09:23.32ID:k9Y5euIy >>758
ほんそれ
ほんそれ
760デフォルトの名無しさん
2025/04/02(水) 12:27:12.37ID:5a/oTSSC クリレポ、一応はDB使った納品書かなんかで使ったわ
情報が全然なくて自分で弄りながら作ったからエラい苦労した記憶しかない
情報が全然なくて自分で弄りながら作ったからエラい苦労した記憶しかない
761デフォルトの名無しさん
2025/04/02(水) 14:23:11.10ID:DR9S3YFG Visual Studio の WinForms から Reportコンポーネント じゃあダメなんか?
https://www.agtech.co.jp/products/fastreport.net/online/ProgrammerManual/ja-JP/UsingReportInVS/TypicalScenario.html
True WinReports for .NET なんてのもあるけど、使えないのか?
https://www.componentsource.co.jp/product/true-winreports-net-j/about
Accessのレポートのように、微に入り細を穿つ作りはヨソのコンポーネントぢゃあ面倒 だとしても
用意されたものを使うっきゃ無いだろうに
ハナシが逸れついでにググって見ただけだから君らの一件との整合性は知らん
レポートコントロールってのも追加できるようだが、それもすでに使い物に成らんのか?
https://qiita.com/vicugna-pacos/items/80e76059af2a29d5835f サイトの情報が古いてか
https://www.agtech.co.jp/products/fastreport.net/online/ProgrammerManual/ja-JP/UsingReportInVS/TypicalScenario.html
True WinReports for .NET なんてのもあるけど、使えないのか?
https://www.componentsource.co.jp/product/true-winreports-net-j/about
Accessのレポートのように、微に入り細を穿つ作りはヨソのコンポーネントぢゃあ面倒 だとしても
用意されたものを使うっきゃ無いだろうに
ハナシが逸れついでにググって見ただけだから君らの一件との整合性は知らん
レポートコントロールってのも追加できるようだが、それもすでに使い物に成らんのか?
https://qiita.com/vicugna-pacos/items/80e76059af2a29d5835f サイトの情報が古いてか
762デフォルトの名無しさん
2025/04/02(水) 16:22:13.97ID:kFN7dZ5N クリレポを買収して中身一緒なの
763デフォルトの名無しさん
2025/04/02(水) 17:44:39.81ID:DR9S3YFG じゃあ、それで解決じゃん?困らないじゃん?
なんでわざわざAccessスレでVisual Studioのクリスタルレポートのボヤキしてるん?
なんでわざわざAccessスレでVisual Studioのクリスタルレポートのボヤキしてるん?
764デフォルトの名無しさん
2025/04/02(水) 18:38:29.39ID:kFN7dZ5N そもそもAccessスレはム板には相応しくないのかもしれん
引用
未だにCrystalReportの呪いがある人でそんなたいした帳票を出してない人には選択肢の一つとなると思います。
ネットで結構有名なC#等の質問サイト等に行くとすぐに「ActiveReportを導入しなさい」的な書き込みが多く見られます。
私が昔から尊敬するネットで良く質問に答えて下さる様な人たちも同じ返答をします。
ActiveReportって結構良い値段します。
なぜMicrosoftReportなのか?
無料だという事とコンポーネントの互換を気にしなくて良い事です。
引用
未だにCrystalReportの呪いがある人でそんなたいした帳票を出してない人には選択肢の一つとなると思います。
ネットで結構有名なC#等の質問サイト等に行くとすぐに「ActiveReportを導入しなさい」的な書き込みが多く見られます。
私が昔から尊敬するネットで良く質問に答えて下さる様な人たちも同じ返答をします。
ActiveReportって結構良い値段します。
なぜMicrosoftReportなのか?
無料だという事とコンポーネントの互換を気にしなくて良い事です。
765デフォルトの名無しさん
2025/04/02(水) 18:43:56.93ID:kFN7dZ5N766デフォルトの名無しさん
2025/04/02(水) 23:12:24.47ID:1Uz6aYIb >>764
マクロしか使ってないやつはそう考えるだろなw
マクロしか使ってないやつはそう考えるだろなw
767デフォルトの名無しさん
2025/04/03(木) 07:43:51.31ID:LP+5khva 結構いい値段しようが、デベロッパーなら価格転嫁できるだろうに プライベートユースで開発してンのか?
小規模向けでぜんぶ込みで安価になんでも開発できるAccess、しかももう改良の余地も無いほどに洗練されてる(w)
こんなレガシーな開発環境他に類を見ないだろ AccessのAccessたる所以ってことで、独自の地位を確立してるでいいじゃん
小規模向けでぜんぶ込みで安価になんでも開発できるAccess、しかももう改良の余地も無いほどに洗練されてる(w)
こんなレガシーな開発環境他に類を見ないだろ AccessのAccessたる所以ってことで、独自の地位を確立してるでいいじゃん
768デフォルトの名無しさん
2025/04/04(金) 10:57:00.22ID:22bgX6/4 AccessでマクロとかVBA使うより
MDEだけ使ってあとはVS(VC/VC#)だろこの板なら常考
MDEだけ使ってあとはVS(VC/VC#)だろこの板なら常考
769デフォルトの名無しさん
2025/04/04(金) 13:05:53.92ID:BXxq7UNx か、かんちがいしないでよね!
サーバーなんかじゃないんだから!
って言い張るためだけに存在を許されている
サーバーなんかじゃないんだから!
って言い張るためだけに存在を許されている
770デフォルトの名無しさん
2025/04/04(金) 13:27:46.05ID:EKlY2S8w 素人が必死
771デフォルトの名無しさん
2025/04/04(金) 17:00:30.03ID:W5FNOvW3772デフォルトの名無しさん
2025/04/04(金) 17:43:27.50ID:xkW8ZkKi vbaでないならsqliteでよくない
レスを投稿する
ニュース
- 中国外務省局長 「ポケットに手を入れていたのは寒いから」 日本との局長級会談で ★3 [お断り★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★3 [樽悶★]
- 高市首相「台湾有事」発言引き出した「立憲・岡田克也氏」に聞いた質問の真意「これはマズイ発言だと」少しずらしてみたが焼け石に水 ★2 [ぐれ★]
- 【株価】日経平均、上げ幅一時2000円超 5万円台を回復 [蚤の市★]
- トランプ氏、女性記者に「ブタ、静かに」 エプスタイン元被告めぐる質問さえぎる [1ゲットロボ★]
- 【米中関係】中国、米国産大豆84万トン輸入 他国産より高値で購入… [BFU★]
- 議員「我々も物価高で苦しいんだ!」 [256556981]
- インボイス制度開始から少し経ったけどこれが原因で倒産した会社あるの?
- 【高市🍶伝統】 日本の伝統 「世界遺産・日本酒」 コメの高騰で滅亡へ。 [485983549]
- 日本人「な、なぜだ?なぜこの件で日本を助けてくれる国が0カ国なんだ!?」。日本人、さすがに気づく [805596214]
- うんこ赤かったんですが
- 卵大幅値上がりで1パック300円台に、ついに数年前の卵ショックに並び始める [709039863]
