>>585
あってるかどうかは知らんが
!は実行時に列挙する気がするんだが
後者は型チェックと変換が入るから後者のほうが遅いと思う
前者も入るかもしれんが、そうなるとForm型とForm_FormName型でどっちのキャストが早いかで
結局やっぱり後者が遅い気がする
どっちにしたってFは型指定されているので事前バインドだが、
それが差に出るのはFのメンバーを使うときだぜ
まあ、なんにしても誤差レベルだと思うが
Access VBA 質問スレ Part2
588デフォルトの名無しさん
2022/07/20(水) 18:29:58.22ID:BaO5YoZA589デフォルトの名無しさん
2022/10/28(金) 11:06:17.52ID:L4jXkRvB PC画面のスクショを撮って、印刷させたいのですが
とっかかりすら分からない初心者です
検索しても該当サイトはなかったので
よろしければご教授願いたいです
とっかかりすら分からない初心者です
検索しても該当サイトはなかったので
よろしければご教授願いたいです
590デフォルトの名無しさん
2022/10/28(金) 12:19:16.61ID:QXDDHW1b591デフォルトの名無しさん
2022/10/28(金) 12:33:34.88ID:L4jXkRvB >>590
はい、ExcelかAccessでとのことで、
今後の勉強含めAccessに挑んでいます。
不特定多数が使用する環境で
(リテラシーが低い人も混在)
ボタン一つで全画面スクショ印刷と
アクティブウィンドウのみスクショ印刷
の2通りできるようにしたいです
(スクショしたデータは印刷後削除される仕様にしたい)
今のところ全画面スクショはできたのですが
アクティブウィンドウと
その後の印刷と削除で、つまづいてます。
ド初心者なので、見当違いな質問をしていたら
申し訳ありません
はい、ExcelかAccessでとのことで、
今後の勉強含めAccessに挑んでいます。
不特定多数が使用する環境で
(リテラシーが低い人も混在)
ボタン一つで全画面スクショ印刷と
アクティブウィンドウのみスクショ印刷
の2通りできるようにしたいです
(スクショしたデータは印刷後削除される仕様にしたい)
今のところ全画面スクショはできたのですが
アクティブウィンドウと
その後の印刷と削除で、つまづいてます。
ド初心者なので、見当違いな質問をしていたら
申し訳ありません
592デフォルトの名無しさん
2022/10/28(金) 12:48:59.54ID:14o/00kf API経由で[PrtSc](全画面)、[Alt]+[PrtSc](アクティブウィンドウのみ)を押せばクリップボードに画面キャプチャができるだろうから
それをレポート上のImageに突っ込んで印刷すればいいんじゃないのかな?
試してないから実際にできるかは知らんけど
それをレポート上のImageに突っ込んで印刷すればいいんじゃないのかな?
試してないから実際にできるかは知らんけど
593デフォルトの名無しさん
2022/10/28(金) 18:23:03.59ID:ivdM6iIS594デフォルトの名無しさん
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
どこか修正するとこありますか?
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外して、エラー内容かけ
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を実行させるタイミングの問題なのかな?
詳細セクションの描画時選んだら代入出来ませんって出た。
試しに詳細セクションダブルクリックだと該当レコードだけは入ったけど。。
一括で全レコード対象にする方法あるんでしょうか。。?
Dir使って判定させるところまでは出来たけど、vbaを実行させるタイミングの問題なのかな?
詳細セクションの描画時選んだら代入出来ませんって出た。
試しに詳細セクションダブルクリックだと該当レコードだけは入ったけど。。
一括で全レコード対象にする方法あるんでしょうか。。?
599デフォルトの名無しさん
2022/12/21(水) 13:19:20.60ID:oTvIdtcL データシートビューのソースの段階でクエリ使ってる?
〇や(空白)を入力するフィールドは確保されてる?
元のソースにpdfファイルがあるか無いかを画面上で比較しながらひとつずつ入力するつもり?
仮のテーブル作ってフォルダ内のpdfのファイル名をDir使ってそのテーブルに代入すれば
簡単に元のソースにも反映出来ると思うけど どうしてもデータシートビューで比較しながら入れたい?
pdfが入ってるフォルダ内がしょっちゅう追加・変更・削除がある場合だとしても、仮のテーブル使っとけば
都度最新の状況での比較が可能だと思えるし、不足してるからpdf作らなきゃ、の指針にも成るような気がする
でも、元のソースに〇のフィールド作っちゃうと、pdf削除されても〇のまま消えない可能性もあるから対策必要か
つまり、一括で全レコード対象にするなら、Dir結果をcsvなりtxtなりに落とし込んで、それと元ソースで更新クエリがいちばん早い
〇や(空白)を入力するフィールドは確保されてる?
元のソースにpdfファイルがあるか無いかを画面上で比較しながらひとつずつ入力するつもり?
仮のテーブル作ってフォルダ内のpdfのファイル名をDir使ってそのテーブルに代入すれば
簡単に元のソースにも反映出来ると思うけど どうしてもデータシートビューで比較しながら入れたい?
pdfが入ってるフォルダ内がしょっちゅう追加・変更・削除がある場合だとしても、仮のテーブル使っとけば
都度最新の状況での比較が可能だと思えるし、不足してるからpdf作らなきゃ、の指針にも成るような気がする
でも、元のソースに〇のフィールド作っちゃうと、pdf削除されても〇のまま消えない可能性もあるから対策必要か
つまり、一括で全レコード対象にするなら、Dir結果をcsvなりtxtなりに落とし込んで、それと元ソースで更新クエリがいちばん早い
600デフォルトの名無しさん
2022/12/21(水) 14:08:13.72ID:29nQbkr4601デフォルトの名無しさん
2023/03/02(木) 17:30:45.61ID:oTm0acsN 値にtrueやfalseが含まれるexcelファイルをDocmd.TransferSpreadsheetを使ってテーブルに取り込むと、
数値として反映されてしまうんですが、理論値のまま取り込む方法はありますか?
変換かけるしかないのかな
数値として反映されてしまうんですが、理論値のまま取り込む方法はありますか?
変換かけるしかないのかな
602デフォルトの名無しさん
2023/03/05(日) 12:31:16.13ID:Yb2sf8rL >>601
取り込んだ後でクエリーで値変えれば良かろうに
取り込んだ後でクエリーで値変えれば良かろうに
603デフォルトの名無しさん
2023/03/24(金) 00:30:10.12ID:higFVnZ+ recordset.Fields.Append "フィールド名", adChar, 200
とかでフィールドを新規設定するといろいろと挙動不審になって、エラーが頻発した。
俺が気がついたのはLen関数がおかしな数字を返すこと。スペースの数を返す。
これのおかげなのか、DictionaryのKeyが変なことになり、ただしいItemが取得出来なくて2日潰したわ。
Trim関数に入れたらまともに動き出した。よけいなスペースが付加されていたため、本来の値と異なっていた。
このあたりの事情を書いたものあるのかなあ?
とかでフィールドを新規設定するといろいろと挙動不審になって、エラーが頻発した。
俺が気がついたのはLen関数がおかしな数字を返すこと。スペースの数を返す。
これのおかげなのか、DictionaryのKeyが変なことになり、ただしいItemが取得出来なくて2日潰したわ。
Trim関数に入れたらまともに動き出した。よけいなスペースが付加されていたため、本来の値と異なっていた。
このあたりの事情を書いたものあるのかなあ?
604デフォルトの名無しさん
2023/03/24(金) 10:46:32.87ID:pyQciQm5 Recordsetの作成(DAO編)
http://www7b.biglobe.ne.jp/~cbcnet/DAO/database.html
レコードセットの作成(ADO編)
http://www7b.biglobe.ne.jp/~cbcnet/ADO/append.html
第4話 DAOとADOの違い
https://www.r-staffing.co.jp/engineer/entry/20210806_1
同一システム内でDAOとADOを併用しないよう留意 とか?
http://www7b.biglobe.ne.jp/~cbcnet/DAO/database.html
レコードセットの作成(ADO編)
http://www7b.biglobe.ne.jp/~cbcnet/ADO/append.html
第4話 DAOとADOの違い
https://www.r-staffing.co.jp/engineer/entry/20210806_1
同一システム内でDAOとADOを併用しないよう留意 とか?
605デフォルトの名無しさん
2023/03/25(土) 11:49:45.50ID:zs10i3Ml エラーが出るもんだから、VarType関数使って疑わしい変数を調べたら、18が返ってきた。
しかし、そんな定数ないんだよなあ。これはどういうことだ?
しかし、そんな定数ないんだよなあ。これはどういうことだ?
606デフォルトの名無しさん
2023/03/25(土) 11:59:33.48ID:nHkGBQf7 値の合計なので、10と8とか 5と6と7とか 思い当たるのをひとつずつ潰してく
607デフォルトの名無しさん
2023/03/25(土) 13:37:32.34ID:zs10i3Ml >>606
ありがとう。
Msgboxでそような定数の合計をしますね。
ところで、そのような知識は私の持っているVBA、VBS、Accessの本には記載されていない様な気がします。
もしかしたら、Visual Basicでは常識なのでしょうか?それとも一般的なプログラミングの世界での常識ですか?
私は仕事でVBAをいじるだけで、一般的なプログラミングはほとんど知らないのでお尋ね致します。
ありがとう。
Msgboxでそような定数の合計をしますね。
ところで、そのような知識は私の持っているVBA、VBS、Accessの本には記載されていない様な気がします。
もしかしたら、Visual Basicでは常識なのでしょうか?それとも一般的なプログラミングの世界での常識ですか?
私は仕事でVBAをいじるだけで、一般的なプログラミングはほとんど知らないのでお尋ね致します。
608デフォルトの名無しさん
2023/03/25(土) 14:20:16.26ID:nHkGBQf7 本はあくまでも全体のほんの一部を抽出して購買欲そそるタイトル付けて売ってるだけ
MSのリファレンスに頼るのが本筋
https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/vartype-function
https://learn.microsoft.com/ja-jp/office/vba/api/overview/access
ネットの情報でも、ご丁寧にスクショ混ぜて説明してるのに、すでにUI変わってて役に立たないとかも多い
紛らわしい情報が氾濫する中で、どれがじぶんの求めるお宝なのかを見極める目を養うのもだいじ
MSのリファレンスに頼るのが本筋
https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/vartype-function
https://learn.microsoft.com/ja-jp/office/vba/api/overview/access
ネットの情報でも、ご丁寧にスクショ混ぜて説明してるのに、すでにUI変わってて役に立たないとかも多い
紛らわしい情報が氾濫する中で、どれがじぶんの求めるお宝なのかを見極める目を養うのもだいじ
609デフォルトの名無しさん
2023/03/27(月) 19:32:00.21ID:zT0GYsm+ >>603
CHARとVARCHARの違い
まあ、SQLの型の基本なんだが、ACCESS関連であまりちゃんと解説してるのみたことないな
https://learn.microsoft.com/ja-jp/office/client-developer/access/desktop-database-reference/datatypeenum
OLE DB プログラマリファレンスの第 13 章および付録 A を参照してください、らしい
CHARとVARCHARの違い
まあ、SQLの型の基本なんだが、ACCESS関連であまりちゃんと解説してるのみたことないな
https://learn.microsoft.com/ja-jp/office/client-developer/access/desktop-database-reference/datatypeenum
OLE DB プログラマリファレンスの第 13 章および付録 A を参照してください、らしい
610デフォルトの名無しさん
2023/03/27(月) 19:43:31.02ID:zT0GYsm+611デフォルトの名無しさん
2023/03/29(水) 07:20:36.71ID:P3Zmpymz AIに書いてほしいコードを聞くと正しく動くコードが返ってくる
bingとchatGPTは頼れる、かも
bingとchatGPTは頼れる、かも
612デフォルトの名無しさん
2023/04/04(火) 10:14:28.50ID:Az13f9J9 最近の VisualStudio に搭載されたコード補完は
おせっかいなくらいにコードの続き出てくるな
おせっかいなくらいにコードの続き出てくるな
613デフォルトの名無しさん
2023/04/04(火) 16:33:58.07ID:vSpSLcg3614デフォルトの名無しさん
2023/04/04(火) 17:16:46.37ID:SG+vqM06 >>613
確かに鵜呑みには出来ないね、よく嘘を言ってくる。ある程度自力で捌けないとヤバいね
確かに鵜呑みには出来ないね、よく嘘を言ってくる。ある程度自力で捌けないとヤバいね
615デフォルトの名無しさん
2023/04/05(水) 00:48:28.57ID:wtS5Em1S 嘘を嘘と見抜けない人の利用はお勧めできない、か
どっかで聞いた話だな
どっかで聞いた話だな
616デフォルトの名無しさん
2023/04/05(水) 19:08:02.04ID:iYloijFa GPTのウソ、具体例有ったら教えて
617デフォルトの名無しさん
2023/04/08(土) 23:18:08.84ID:m5gy6cDu Excelスレに貼られていたWebview2のコードはワロタ
618デフォルトの名無しさん
2023/04/10(月) 19:36:08.19ID:YifXJ3Ct 今日も大嘘をつかれました。
質問
MS Accessのvbaで既に存在するプログラム中に宣言されていない変数があります。これを探して,宣言するvba プロシジャーを教えて。
回答
MS AccessのVBAで、プログラム中で宣言されていない変数を検出して、宣言するための手順を説明します。
MS Accessを開き、VBAエディターを起動します。
検索機能を使用して、すべてのモジュール内の未宣言の変数を検索します。
未宣言の変数を検索するには、VBAエディターで「Ctrl + F」を押して、「検索」ダイアログボックスを開きます。ダイアログボックスで「未定義の」または「未宣言の」を検索キーワードとして入力し、「検索」または「次へ」ボタンをクリックします。これにより、未宣言の変数が使用されている場所がすべて検索されます。
未宣言の変数を見つけたら、変数の宣言を追加します。
例えば、未宣言の変数「myVariable」が使用されている場合、以下のように宣言を追加できます。
Dim myVariable As DataType ' 変数の宣言
DataTypeは変数のデータ型を指定するために使用されます。例えば、myVariableが数値である場合、データ型はLong、Integer、Doubleなどになります。文字列である場合は、データ型はStringになります。
全ての未宣言の変数を宣言したら、プログラムを保存して実行してください。
これにより、未宣言の変数エラーが回避され、プログラムが正常に実行されるようになります。
質問
MS Accessのvbaで既に存在するプログラム中に宣言されていない変数があります。これを探して,宣言するvba プロシジャーを教えて。
回答
MS AccessのVBAで、プログラム中で宣言されていない変数を検出して、宣言するための手順を説明します。
MS Accessを開き、VBAエディターを起動します。
検索機能を使用して、すべてのモジュール内の未宣言の変数を検索します。
未宣言の変数を検索するには、VBAエディターで「Ctrl + F」を押して、「検索」ダイアログボックスを開きます。ダイアログボックスで「未定義の」または「未宣言の」を検索キーワードとして入力し、「検索」または「次へ」ボタンをクリックします。これにより、未宣言の変数が使用されている場所がすべて検索されます。
未宣言の変数を見つけたら、変数の宣言を追加します。
例えば、未宣言の変数「myVariable」が使用されている場合、以下のように宣言を追加できます。
Dim myVariable As DataType ' 変数の宣言
DataTypeは変数のデータ型を指定するために使用されます。例えば、myVariableが数値である場合、データ型はLong、Integer、Doubleなどになります。文字列である場合は、データ型はStringになります。
全ての未宣言の変数を宣言したら、プログラムを保存して実行してください。
これにより、未宣言の変数エラーが回避され、プログラムが正常に実行されるようになります。
619デフォルトの名無しさん
2023/04/12(水) 18:35:03.42ID:b8lcjBjc 未宣言の変数が300種類くらいあるポンコツ業務用mdbがある。Option Explicit化して手作業で未宣言変数を探すとものすごく時間がかかる。ローカル変数だけならテキストに対しての構文解析だけで出来そうだけど、誰かやり方知ってますか?
Access用の解析ツールは時間がかかりすぎるので諦めました
Access用の解析ツールは時間がかかりすぎるので諦めました
620デフォルトの名無しさん
2023/04/14(金) 12:20:23.58ID:ooEkRg5K 全角数字を含むフォームは普通VBEのプロジェクトエクスプローラでも全角数字で表示される。
しかし、俺の持っているmdbはなぜかフォームによってはVBEで半角の場合がある。
つまりForm1番→Form1番
というように半角になっている。
フォームのもっている名前とモジュールの名前が異なるので検索漏れが発生して何かと不便。
解決策ありますかね?
しかし、俺の持っているmdbはなぜかフォームによってはVBEで半角の場合がある。
つまりForm1番→Form1番
というように半角になっている。
フォームのもっている名前とモジュールの名前が異なるので検索漏れが発生して何かと不便。
解決策ありますかね?
621デフォルトの名無しさん
2023/04/19(水) 15:36:15.06ID:hTeej4zs622デフォルトの名無しさん
2023/04/19(水) 21:07:01.70ID:UiOYL9zn >>621
VBEはクラスオブジェクトのリネームはできないんですよねえ
Text化してファイル名を統一してから読み込みますかねえ?それでなおるか未確認ですが。
今は検索文字列のパターンを増やして対応してますが、邪道だなあと思いながらやってます。
VBEはクラスオブジェクトのリネームはできないんですよねえ
Text化してファイル名を統一してから読み込みますかねえ?それでなおるか未確認ですが。
今は検索文字列のパターンを増やして対応してますが、邪道だなあと思いながらやってます。
623デフォルトの名無しさん
2023/04/20(木) 00:39:31.09ID:Ck2wYtqO ACCESS側で名前変更しても、VBE側が変わらないことがあるっぽいな
フォームの コード保持 を いいえ にして保存してから はい にしたら同じになったぞ
まあ、コード全部いったん消えるがな
フォームの コード保持 を いいえ にして保存してから はい にしたら同じになったぞ
まあ、コード全部いったん消えるがな
624デフォルトの名無しさん
2023/04/20(木) 10:07:33.88ID:b7y+tf5m >>623
テキスト化してフォームと同じ全角のファイル名にしてからLoadしたらVBEのクラスオブジェクトの名前と一致させることが出来ました。
思うに、このプログラムを書いた人はテキスト化して、お好みのエディタで書いていたんでしょうね。
だからOption Explicitなんてしてなくて、問題なく書けるので、変数のスペルミスがあります。
今回はファイル名の全角半角を間違えてままLoadしてフォーム名とクラスオブジェクト名が一致しないということになったと思います。
よほどVBEを使いたくなかったんでしょうね。
テキスト化してフォームと同じ全角のファイル名にしてからLoadしたらVBEのクラスオブジェクトの名前と一致させることが出来ました。
思うに、このプログラムを書いた人はテキスト化して、お好みのエディタで書いていたんでしょうね。
だからOption Explicitなんてしてなくて、問題なく書けるので、変数のスペルミスがあります。
今回はファイル名の全角半角を間違えてままLoadしてフォーム名とクラスオブジェクト名が一致しないということになったと思います。
よほどVBEを使いたくなかったんでしょうね。
625デフォルトの名無しさん
2023/04/28(金) 05:20:11.81ID:d0ZMhP2N やけにエラーが出るので調べたら、クラスオブジェクトの名前のカッコが前側が半角、後側が全角のものを発見。しかも複数。
俺はプロじゃないけど、このデータベースに毎月金を払っている。金取るならちゃんとしたものを作って欲しいわ。
宣言だけして読み書きしない変数が約2000個、呼び出されないプロシジャーと空のプロシジャーが100個以上がもあるし、どうなっているんだ?
戻り値のないプロシジャーをFunctionにして,呼び出すだけのために変数を使ったりしてアホかと思うことばかり
俺はプロじゃないけど、このデータベースに毎月金を払っている。金取るならちゃんとしたものを作って欲しいわ。
宣言だけして読み書きしない変数が約2000個、呼び出されないプロシジャーと空のプロシジャーが100個以上がもあるし、どうなっているんだ?
戻り値のないプロシジャーをFunctionにして,呼び出すだけのために変数を使ったりしてアホかと思うことばかり
626デフォルトの名無しさん
2023/05/03(水) 21:33:01.68ID:u6AyBhT9 クエリがいくつかあってそのなかであるテーブルを使ってるかどうか検索する方法ないですか
627デフォルトの名無しさん
2023/05/03(水) 21:34:54.38ID:u6AyBhT9 これVBA関係ないな
628デフォルトの名無しさん
2023/05/04(木) 13:12:55.46ID:xnh5NJU8629デフォルトの名無しさん
2023/05/04(木) 20:33:29.74ID:i/jCXYvG QueryDefsのSQLプロパティをinstringで調べる
それをループ かな
それをループ かな
630デフォルトの名無しさん
2023/05/10(水) 00:24:35.45ID:qaMHPguU >>629
これがベストだね
これがベストだね
631デフォルトの名無しさん
2023/05/12(金) 20:45:34.35ID:nGf/Bj/G 流行りのChatGPTをACCESSで使えるようにしてみた
BingやBardもレスポンス良く使えるようになったのであまり意味はなかったが面白かった
VBAコードはChatGPTに書かせたのをほぼコピペで動くようにできた
BingやBardもレスポンス良く使えるようになったのであまり意味はなかったが面白かった
VBAコードはChatGPTに書かせたのをほぼコピペで動くようにできた
632デフォルトの名無しさん
2023/05/13(土) 09:19:13.17ID:uR6hVfud スレの意図を無視するがAccessは出来るだけVBA使わず作成する方がバージョンアップにも対応し易い
633デフォルトの名無しさん
2023/05/13(土) 13:15:28.85ID:JkElVRfp お客様に納品するならそういう気遣いも要りますね
自家用なので気の済むまで作り込みます
自社の50人くらいが快適なように
自家用なので気の済むまで作り込みます
自社の50人くらいが快適なように
634デフォルトの名無しさん
2023/05/13(土) 16:13:18.44ID:74jfRr8+ どうした? 総合で同意が得られなかったから改めてコッチに書いたのか?
Accessをインストールだけして使わないでいればバージョンアップもへったくれも無いから、そうした方がいいぞ?
Accessをインストールだけして使わないでいればバージョンアップもへったくれも無いから、そうした方がいいぞ?
635デフォルトの名無しさん
2023/05/14(日) 08:52:04.69ID:UU9sI9hc Rubberduckは大きいデータベースだとパース中にエラーが出て使い物にならないねえ
数年前よりはるかにマシになったけど。
数年前よりはるかにマシになったけど。
636デフォルトの名無しさん
2023/05/16(火) 21:12:36.24ID:dmITDlP3 msgboxの戻り値を格納する変数の型をvbMsgboxResultにするかLongにするか悩んだので、
時間を計ろうと思って、古い本を引っ張り出して、二つを比較するプロシジャーを書いた。
ふと、全く同じテストをしたらどうなるのか気になったので、やってみたら、全く同じプロシジャー同士の比較なのに30%位スピードに差が出る。さっきやったら最大で37%速度差があった。
一方が速いこともあれば、もう一方が速いときもある。こんなのでスピード比較する意味あるのかなあ?
時間測定はGetTickCountを使って、変数宣言のみ100万回のループをするプロシジャーを100回呼び出すという感じ。
なんかいい測定方法ありますかね?
時間を計ろうと思って、古い本を引っ張り出して、二つを比較するプロシジャーを書いた。
ふと、全く同じテストをしたらどうなるのか気になったので、やってみたら、全く同じプロシジャー同士の比較なのに30%位スピードに差が出る。さっきやったら最大で37%速度差があった。
一方が速いこともあれば、もう一方が速いときもある。こんなのでスピード比較する意味あるのかなあ?
時間測定はGetTickCountを使って、変数宣言のみ100万回のループをするプロシジャーを100回呼び出すという感じ。
なんかいい測定方法ありますかね?
637デフォルトの名無しさん
2023/05/16(火) 21:52:45.08ID:Mqz2m8JL timer使っても同じかな
638デフォルトの名無しさん
2023/05/17(水) 06:33:48.44ID:AOXlzNDq timerが秒単位でGetTickCountはミリ秒単位と古い本に書いてあったなあ
あと、timerはそれ自体の動作が遅いって書いてあった
あと、timerはそれ自体の動作が遅いって書いてあった
639デフォルトの名無しさん
2023/05/18(木) 18:57:23.27ID:8+QzSev9 ユーザーフォームが大きいんで下半分を隠す、上半分を隠す、という2つのコードを書きたいんです。下半分を隠す、はハイト プロパティを小さくすれば可能なんだけど、上半分を隠す、は不可能なんですかね。
640デフォルトの名無しさん
2023/05/18(木) 20:29:25.05ID:FTp82+/Y >>639
何をやりたいのかイマイチ分からんけど、タブコントロールじゃだめなん?
何をやりたいのかイマイチ分からんけど、タブコントロールじゃだめなん?
641デフォルトの名無しさん
2023/05/18(木) 21:32:12.21ID:UaeB70YO 上半分を隠したら×ボタン無くなってにっちもさっちも行かなくなるぞ
642デフォルトの名無しさん
2023/05/18(木) 21:36:12.00ID:/q1eE0wB >>639
2つのフォームに分けたら良いと思うの
2つのフォームに分けたら良いと思うの
643デフォルトの名無しさん
2023/05/19(金) 21:09:14.22ID:j+pEmA6B644デフォルトの名無しさん
2023/05/23(火) 14:00:02.22ID:MnQDcyxi 質問です。
Excelファイルを読み込んで、加工してからテーブルとして保持したいんですが、
Excelファイルのまま編集してinsertするのと、
一度テーブルとして読み込んでから編集してinsertするのはどちらが高速でしょうか?
Excelファイルを読み込んで、加工してからテーブルとして保持したいんですが、
Excelファイルのまま編集してinsertするのと、
一度テーブルとして読み込んでから編集してinsertするのはどちらが高速でしょうか?
645デフォルトの名無しさん
2023/05/23(火) 14:42:54.35ID:3uLTyIP1 insert ? inport の手順なら下記リンク先を参考に
https://hamachan.info/win8/access/import.html
Excelファイルをリンクでもいけるし 同作業を何度も繰り返すとかでも、操作を保存しとけば楽だし
データのボリューム次第とかマシンスペックとかも兼ね合いがあるから、どちらとも
ウィザードの途中画面をよく見て、事前にExcel側を整えて置けば inport も楽だし
編集内容がより細かく設定できるのはExcelなのかAccessなのかを知る事でも、どちらの方法を採るかの判断になる
https://hamachan.info/win8/access/import.html
Excelファイルをリンクでもいけるし 同作業を何度も繰り返すとかでも、操作を保存しとけば楽だし
データのボリューム次第とかマシンスペックとかも兼ね合いがあるから、どちらとも
ウィザードの途中画面をよく見て、事前にExcel側を整えて置けば inport も楽だし
編集内容がより細かく設定できるのはExcelなのかAccessなのかを知る事でも、どちらの方法を採るかの判断になる
646デフォルトの名無しさん
2023/05/23(火) 15:03:14.67ID:MnQDcyxi いろいろありがとございます、しかしimportではなくinsertです
内容を見て既存のテーブルに1行ずつinsert(もしくはupdate)していく形になります。
内容を見て既存のテーブルに1行ずつinsert(もしくはupdate)していく形になります。
647デフォルトの名無しさん
2023/05/23(火) 15:26:17.99ID:3uLTyIP1 んーと、Access側のテーブルはあくまでもデータストック用な立ち位置?
事前にExcelでの編集が伴うなら、Accessのテーブルとしてから編集するのはムダなような
https://tonari-it.com/excel-vba-access-add-records/ コッチのが参考に成るかも 実行速度の検証もしてる様子
事前にExcelでの編集が伴うなら、Accessのテーブルとしてから編集するのはムダなような
https://tonari-it.com/excel-vba-access-add-records/ コッチのが参考に成るかも 実行速度の検証もしてる様子
648デフォルトの名無しさん
2023/05/23(火) 16:47:55.53ID:MnQDcyxi ありがとうございます!
いまさらっとですが見てみたところ、速度比較などもしていて参考になりそうです。
見てみます!
中間テーブルを作成してから編集した方がいいよ、という声を聞いたんですが
いちいち使わないテーブルに投入する必要はないのでは?と思い質問いたしました。
事前編集方式でやってみます!
いまさらっとですが見てみたところ、速度比較などもしていて参考になりそうです。
見てみます!
中間テーブルを作成してから編集した方がいいよ、という声を聞いたんですが
いちいち使わないテーブルに投入する必要はないのでは?と思い質問いたしました。
事前編集方式でやってみます!
649デフォルトの名無しさん
2023/05/23(火) 18:12:18.40ID:3uLTyIP1 Excelの元データと、何をどう編集したいかも判らないから、中間テーブルの必要性は当人しか判断不能
上でも書いたけど、編集内容がExcelの方が楽で早いのかAccessの方なのかでも手順は変わるような
速さを第一に求めているように読めるけど、「一行ずつ」って書かれた部分で「おや?」と
スムースにデータを移行させるには、最初のリンク先の「データクレンジング」も読んでおいてもムダには成らない
アチコチに目を配らなければならない様子でお疲れ でもそれがじぶんの糧に成る
上でも書いたけど、編集内容がExcelの方が楽で早いのかAccessの方なのかでも手順は変わるような
速さを第一に求めているように読めるけど、「一行ずつ」って書かれた部分で「おや?」と
スムースにデータを移行させるには、最初のリンク先の「データクレンジング」も読んでおいてもムダには成らない
アチコチに目を配らなければならない様子でお疲れ でもそれがじぶんの糧に成る
650デフォルトの名無しさん
2023/05/24(水) 08:46:04.47ID:AU7HKxhu651デフォルトの名無しさん
2023/05/24(水) 10:26:10.15ID:eouMPy16 みなさまいろいろありがとうございます
自分の説明不足&理解不足ですみません。
ACCESSに入っている一覧情報を定期的に更新しなければならず、
その更新情報がExcelで来るのでそれを読み込んで…とやる感じです。
ACCESS側で固有に更新している情報もあるのでまるっと上書きではなく、
一行ずつ確認して該当の列のみ追加や上書きをしなくてはいけません。
それを、いまはAccessVBA内でExcelファイルを開いて
一行ずつ読み込んで内容確認して内容によってSQL流して…とやっているのですが、
もしかしてExcelファイルを中間テーブルにimportしてから
操作した方が早いのかな??と悩んで書き込んだ次第です。
「ExcelインポートしてACCESSで加工」と言ってくださってるのは
後者の場合を指しているのですかね?
今はとりあえずサンプルを作って動かして比較しようかと思っています。
自分の説明不足&理解不足ですみません。
ACCESSに入っている一覧情報を定期的に更新しなければならず、
その更新情報がExcelで来るのでそれを読み込んで…とやる感じです。
ACCESS側で固有に更新している情報もあるのでまるっと上書きではなく、
一行ずつ確認して該当の列のみ追加や上書きをしなくてはいけません。
それを、いまはAccessVBA内でExcelファイルを開いて
一行ずつ読み込んで内容確認して内容によってSQL流して…とやっているのですが、
もしかしてExcelファイルを中間テーブルにimportしてから
操作した方が早いのかな??と悩んで書き込んだ次第です。
「ExcelインポートしてACCESSで加工」と言ってくださってるのは
後者の場合を指しているのですかね?
今はとりあえずサンプルを作って動かして比較しようかと思っています。
652デフォルトの名無しさん
2023/05/24(水) 10:50:21.63ID:l+gVJ33A そういうことなら中間テーブルに取り込んで、テーブル同士の差分をチェックかな
https://tasukete-access.com/2022/11/28/accessintro_table_comparison/
[フィールド単位での差分をチェックする] この方法のが近いのか
https://tasukete-access.com/2022/11/28/accessintro_table_comparison/
[フィールド単位での差分をチェックする] この方法のが近いのか
653デフォルトの名無しさん
2023/05/24(水) 23:16:20.24ID:CzWxWRtY 返信遅れてすみません!ありがとうございます!
こんなやり方ができるんですね!
全部SQL書こうと想ってましたがクエリで楽に作れるかもしれず嬉しいです。
参考に書いてみます、本当にありがとうございます!
こんなやり方ができるんですね!
全部SQL書こうと想ってましたがクエリで楽に作れるかもしれず嬉しいです。
参考に書いてみます、本当にありがとうございます!
654デフォルトの名無しさん
2023/05/26(金) 17:24:59.84ID:sT8UcBqC 500以上のモジュールにOption Explicitが書いてない。
当然、宣言されていない変数が何百もある。
ここにOption Explicitを書くと、宣言されていない変数を見つけるたびにコンパイルが止まるので面倒。
一括して発見する方法を知ってる人いますか?
VBEが発見できるので、その方法が分かればユーザにも分かるはずだと思うが、検索しても見つからない。
Cのコンパイラを自作する技術があれば、文法解析の手法が使えると思って調べたけど、全余暇時間をコンパイラ自作に割り当てても6ヶ月かかったと言ってる人がいて、踏み出せない。
当然、宣言されていない変数が何百もある。
ここにOption Explicitを書くと、宣言されていない変数を見つけるたびにコンパイルが止まるので面倒。
一括して発見する方法を知ってる人いますか?
VBEが発見できるので、その方法が分かればユーザにも分かるはずだと思うが、検索しても見つからない。
Cのコンパイラを自作する技術があれば、文法解析の手法が使えると思って調べたけど、全余暇時間をコンパイラ自作に割り当てても6ヶ月かかったと言ってる人がいて、踏み出せない。
655デフォルトの名無しさん
2023/05/26(金) 19:16:13.82ID:+AT6wCCw こんなん見付からはりました
https://stabucky.com/wp/archives/6297 実際に検証はしてないんで、自己責任 ←重要!!
現物mdb(そんなのはAccdbでは無くmdbだと勝手に決め付けてる)では無く、コピーしたファイルで
尚且つネットから切り離しスタンドアロンで、更に30秒後に発火するかも知れないので消火器用意してから
試してみてください 結果報告が期待されます
VBE上でCtrl + Spaceで入力支援機能(サジェストっつーの?)を出して、いっこずつTABで拾いだす案を
提案しようと思いつつぐぐってたら出てきた代物 宣言してなかったら自動メンバー表示(どの名称が正式か知らん)
にも出てこないのか!?と、ようやく気付いたレベルの人間のレスなので、眉唾しながら(若しくはスルー推奨)
VBAでJavaScriptを使うには?という場合は : https://extan.jp/?p=10611 とか
あと、『なお「unique」という自作の関数を使っています』とあるので、それも併せておかないと動作しないかも(きっと)
https://stabucky.com/wp/archives/6297 実際に検証はしてないんで、自己責任 ←重要!!
現物mdb(そんなのはAccdbでは無くmdbだと勝手に決め付けてる)では無く、コピーしたファイルで
尚且つネットから切り離しスタンドアロンで、更に30秒後に発火するかも知れないので消火器用意してから
試してみてください 結果報告が期待されます
VBE上でCtrl + Spaceで入力支援機能(サジェストっつーの?)を出して、いっこずつTABで拾いだす案を
提案しようと思いつつぐぐってたら出てきた代物 宣言してなかったら自動メンバー表示(どの名称が正式か知らん)
にも出てこないのか!?と、ようやく気付いたレベルの人間のレスなので、眉唾しながら(若しくはスルー推奨)
VBAでJavaScriptを使うには?という場合は : https://extan.jp/?p=10611 とか
あと、『なお「unique」という自作の関数を使っています』とあるので、それも併せておかないと動作しないかも(きっと)
656デフォルトの名無しさん
2023/05/29(月) 16:07:15.09ID:AvjLnKXj657デフォルトの名無しさん
2023/06/08(木) 22:05:58.45ID:tPqYzYSn 配布したaccdbを365runtimeで動かしてて、今朝突然レポートが開かなくなった
ほぼ午前中すったもんだして2013runtimeならレポートの印刷やプレビューが問題無い事がわかってruntime差し替えた
こんな目にあったひと他にいない?
ほぼ午前中すったもんだして2013runtimeならレポートの印刷やプレビューが問題無い事がわかってruntime差し替えた
こんな目にあったひと他にいない?
658デフォルトの名無しさん
2023/06/09(金) 03:25:01.10ID:i6Y59lYy >>657
はい、います
365で突然、帳票の罫線が消えた事があります
その時はAccessのバージョンを1つ前にロールバックして解決しました
方法は以下のURL参照
■Office - Microsoft コミュニティ
https://answers.microsoft.com/ja-jp/msoffice/forum/all/office/67665e18-c4c7-4c1c-b5d1-3ff6e6cd8334
今だと一つ前はバージョン 2304 (ビルド 16327.20248)ですかね
それでダメならもう一つ前へ
はい、います
365で突然、帳票の罫線が消えた事があります
その時はAccessのバージョンを1つ前にロールバックして解決しました
方法は以下のURL参照
■Office - Microsoft コミュニティ
https://answers.microsoft.com/ja-jp/msoffice/forum/all/office/67665e18-c4c7-4c1c-b5d1-3ff6e6cd8334
今だと一つ前はバージョン 2304 (ビルド 16327.20248)ですかね
それでダメならもう一つ前へ
659デフォルトの名無しさん
2023/06/09(金) 04:50:51.47ID:uT9lsXlY ロールバック、覚えときます
ありがとう
ありがとう
660デフォルトの名無しさん
2023/06/09(金) 12:36:00.93ID:G8Vh+N8B それって、MSからバグフィックスや修正が為されたのを察知するにはどうしたらいい?
ロールバックしっ放し? 勝手にアプデされてまだ直らなかったら二つ前にロールバック?
ずっと修正されなかったらロールバックバックバックとかに成らん?
ロールバックしっ放し? 勝手にアプデされてまだ直らなかったら二つ前にロールバック?
ずっと修正されなかったらロールバックバックバックとかに成らん?
661デフォルトの名無しさん
2023/06/09(金) 16:09:51.45ID:XhtkwaOO >>660
察知は毎月リリースページを確認していました
バグが修正されるまでは Office の自動更新を止めます
なのでロールバックは最初の1回だけです
バグが修正されたら自動更新を有効に戻して最新版にする感じでした
更新は重大バグ修正の時のみ、原則自動更新は使わないという運用もあります
これに関してはお客さん次第ですかね
察知は毎月リリースページを確認していました
バグが修正されるまでは Office の自動更新を止めます
なのでロールバックは最初の1回だけです
バグが修正されたら自動更新を有効に戻して最新版にする感じでした
更新は重大バグ修正の時のみ、原則自動更新は使わないという運用もあります
これに関してはお客さん次第ですかね
662デフォルトの名無しさん
2023/06/09(金) 16:20:24.73ID:G8Vh+N8B そうだよね 委託を請けてる業者さん目線だよね
エンドのユーザーはそんなのに目を通さないしね 見てもどれが自分の不具合に当て嵌まるか解かり辛いしね
じゃあ内製のユーザーはロールバックバックバックし続けるしか無いよね
アプデを停め続けるひとも居るかも知らんけど、そうすると1年分とか溜まってそれはそれで地獄を見るしね
やっぱこういう場所で症状とかを意見交換するのは貴重なんだ、と再認識
エンドのユーザーはそんなのに目を通さないしね 見てもどれが自分の不具合に当て嵌まるか解かり辛いしね
じゃあ内製のユーザーはロールバックバックバックし続けるしか無いよね
アプデを停め続けるひとも居るかも知らんけど、そうすると1年分とか溜まってそれはそれで地獄を見るしね
やっぱこういう場所で症状とかを意見交換するのは貴重なんだ、と再認識
663デフォルトの名無しさん
2023/06/09(金) 17:23:51.20ID:XhtkwaOO >>662
はい、開発委託業者です
確かにエンドユーザーさんにリリースページは無縁ですよね
一応システム担当者さんにはお知らせしましたけど、こちらで随時チェックという感じでした
また修正されてもリリースページに載らない細かい不具合修正も多いです
レポートの罫線不具合はまさにそれでした
■最新チャネル リリースのリリース ノート - Office release notes | Microsoft Learn
https://learn.microsoft.com/ja-jp/officeupdates/current-channel
はい、開発委託業者です
確かにエンドユーザーさんにリリースページは無縁ですよね
一応システム担当者さんにはお知らせしましたけど、こちらで随時チェックという感じでした
また修正されてもリリースページに載らない細かい不具合修正も多いです
レポートの罫線不具合はまさにそれでした
■最新チャネル リリースのリリース ノート - Office release notes | Microsoft Learn
https://learn.microsoft.com/ja-jp/officeupdates/current-channel
664デフォルトの名無しさん
2023/06/10(土) 18:20:00.00ID:u0MJNtiG あと、マクロだと screen.active.control とか出来ないよね
665664
2023/06/10(土) 18:20:16.44ID:u0MJNtiG 誤爆
666デフォルトの名無しさん
2023/06/11(日) 17:21:05.93ID:/gnEKRu3 sleep をどんだけにするかどうやって決めるの?
667デフォルトの名無しさん
2023/06/13(火) 15:38:15.16ID:bu7CkXDV VBAで自作のクラスモジュール作成したんですが、
それを引数で渡す関数の書き方がわかりません
Sub test(ByVal hoge As Hoge)
みたいな感じで書いたのですがうまくいきません。
(As Hogeが自動でAs hogeと変換されるし、エラーになります)
どなたか教えていただけませんでしょうか?
それを引数で渡す関数の書き方がわかりません
Sub test(ByVal hoge As Hoge)
みたいな感じで書いたのですがうまくいきません。
(As Hogeが自動でAs hogeと変換されるし、エラーになります)
どなたか教えていただけませんでしょうか?
668デフォルトの名無しさん
2023/06/13(火) 19:34:42.68ID:d6Pomi9y669デフォルトの名無しさん
2023/06/14(水) 11:24:04.63ID:3Eu4F25u >>667
VBAでクラスモジュールなんて不要
VBAでクラスモジュールなんて不要
670デフォルトの名無しさん
2023/06/15(木) 16:26:17.40ID:VlP0x+zk >>669
流石にそれはない。クラスモジュールがある方が便利だよ。
流石にそれはない。クラスモジュールがある方が便利だよ。
671デフォルトの名無しさん
2023/06/15(木) 19:09:52.15ID:y9q9PTdn bindってのでクラスモジュールの有り難みを知りました
672デフォルトの名無しさん
2023/06/15(木) 20:42:35.42ID:RAXKxz4R 俺もクラス使いたい派
保守性が全然違う
保守性が全然違う
673デフォルトの名無しさん
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でよくない
773デフォルトの名無しさん
2025/04/04(金) 18:11:15.64ID:VvPqqnTF なら、ソッチで話題にしてりゃいいだけじゃんか
「DBなんか都合のいいのない?」「mdb・accdbでいいよ もしくはmde・accdeで」
っつーひと言で済む話
誰かがこの板にAccessスレ建てて、いくばくかの人達が参考にしてることの何がいけないんだか
Access単体で開発環境整ってるんだし、なぜことさら別のIDEの話題してんだか意味わからん
そのくせレポートがいいもの無いとか愚痴ボヤキはじめるし Accessだけなら一向に困らんのだが
「DBなんか都合のいいのない?」「mdb・accdbでいいよ もしくはmde・accdeで」
っつーひと言で済む話
誰かがこの板にAccessスレ建てて、いくばくかの人達が参考にしてることの何がいけないんだか
Access単体で開発環境整ってるんだし、なぜことさら別のIDEの話題してんだか意味わからん
そのくせレポートがいいもの無いとか愚痴ボヤキはじめるし Accessだけなら一向に困らんのだが
774デフォルトの名無しさん
2025/04/04(金) 20:00:14.25ID:uy+C0MOy >>773
勝手に一人でキレてるバカ発見(笑)
勝手に一人でキレてるバカ発見(笑)
775デフォルトの名無しさん
2025/04/04(金) 22:44:01.18ID:GYnqFS+F776デフォルトの名無しさん
2025/04/05(土) 08:22:18.61ID:o7jWaKkN >>773
お前756と同じやつ?
お前756と同じやつ?
777デフォルトの名無しさん
2025/04/05(土) 09:07:26.55ID:9ACWZmiM そうです 私が756 761 763 767 773ですが、何か?
778デフォルトの名無しさん
2025/04/05(土) 13:04:26.36ID:Ur9Vw4Z1 >>773
マクロしか使ってないやつはそう考えるだろなω
マクロしか使ってないやつはそう考えるだろなω
779デフォルトの名無しさん
2025/04/05(土) 13:33:58.77ID:o7jWaKkN >>777
「開発環境」の定義を自分の中で整理してから発言しろ
「開発環境」の定義を自分の中で整理してから発言しろ
780デフォルトの名無しさん
2025/04/05(土) 17:37:20.26ID:9ACWZmiM そのぐらいエディタ(VBE)の事だとアタマの中で読み替えろ
コンパイラは不要だしデバッグもできるし 重箱の隅突っ突く事しか出来んのか
いちいち呼び止めといて用事はそれだけなのか? 鬱陶しいにも程がある 巣に帰れ
コンパイラは不要だしデバッグもできるし 重箱の隅突っ突く事しか出来んのか
いちいち呼び止めといて用事はそれだけなのか? 鬱陶しいにも程がある 巣に帰れ
781デフォルトの名無しさん
2025/04/05(土) 19:57:29.73ID:TpoqeJku 「DBなんか都合のいいのない?」「sqliteでいいよ もしくはsqliteで」
782デフォルトの名無しさん
2025/04/05(土) 21:16:47.43ID:o7jWaKkN >>780
おい、バカ
おーい、バーカ
ベーシックの勉強よりも日本語の勉強からしましょうね
定義って日本語覚えてきてね
アクセスかじったじむやさんかなんかのあいてしてるひまはえすいーのひとにはないんですよーwww
おい、バカ
おーい、バーカ
ベーシックの勉強よりも日本語の勉強からしましょうね
定義って日本語覚えてきてね
アクセスかじったじむやさんかなんかのあいてしてるひまはえすいーのひとにはないんですよーwww
783デフォルトの名無しさん
2025/04/05(土) 21:23:56.99ID:yx70iKi8 スレタイすら読めない馬鹿が居着いてしまったか
784デフォルトの名無しさん
2025/04/05(土) 23:24:10.62ID:d+s1BeKK >>782
無様なバカ
無様なバカ
785デフォルトの名無しさん
2025/04/11(金) 19:36:35.53ID:i2PY9ZNn WIX
786デフォルトの名無しさん
2025/04/21(月) 23:53:02.62ID:CmWZglYO 私はプログラマ歴20年ですが、お客様からUTF-8形式のデータを出力してほしいと言われました。
UTF-8って何ですか?
UTF-8って何ですか?
787デフォルトの名無しさん
2025/04/22(火) 08:27:56.01ID:41LYkh+W こないだビジネスsoft板のExcel総合相談所で話題に成った奴だな
寄せ集めの、ほぼ野良に近いデータ掻き集められたものは、文字コードがめちゃくちゃなのもあるという
TableからExcel出力とかじゃ無くて、一旦csvでUTF-8に限定して出力してみる
それを元データと比較して文字化けとかしてないことを念入りにチェックしなさいと
Excel上では見た目は見分け付かないけど、実は文字コードが全然違うものだった とかはよくあるらしい
データ入力時メイリオ使っててそれをPDF変換したものは勝手に中国語の同じ字に変換されてしまう、とか
Macで入力された文字が、Unix系で(ry とか、文字コードが勝手に変わる要因は様々らしい
https://mevius.5ch.net/test/read.cgi/bsoft/1728342726/600- 一応この辺から辿ってくと変遷が分かるかも
寄せ集めの、ほぼ野良に近いデータ掻き集められたものは、文字コードがめちゃくちゃなのもあるという
TableからExcel出力とかじゃ無くて、一旦csvでUTF-8に限定して出力してみる
それを元データと比較して文字化けとかしてないことを念入りにチェックしなさいと
Excel上では見た目は見分け付かないけど、実は文字コードが全然違うものだった とかはよくあるらしい
データ入力時メイリオ使っててそれをPDF変換したものは勝手に中国語の同じ字に変換されてしまう、とか
Macで入力された文字が、Unix系で(ry とか、文字コードが勝手に変わる要因は様々らしい
https://mevius.5ch.net/test/read.cgi/bsoft/1728342726/600- 一応この辺から辿ってくと変遷が分かるかも
788デフォルトの名無しさん
2025/04/23(水) 09:20:24.52ID:yoO2Q6CW 〜と〜
レスを投稿する
ニュース
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 ★2 [ぐれ★]
- 立民・岡田氏の質疑「不適切」 維新・藤田氏、台湾有事答弁巡り [蚤の市★]
- 【悲報】日本、自民党(統一教会)で完全崩壊か?年金制度実質破綻、生活保護、国民健康保険廃止へ [383063292]
- ㊗157円 [194819832]
- 【高市売り】円安、止まらず!凄い勢いで暴落中。157円へ [219241683]
- なんでIDがHAPPYなの?
- 松屋博多駅南店にてナポリタンバーグ!
- ‎
