Access VBA 質問スレ Part2 (788レス)
Access VBA 質問スレ Part2 http://mevius.5ch.net/test/read.cgi/tech/1544620479/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
170: デフォルトの名無しさん [sage] 2020/10/13(火) 20:22:52.03 ID:Jo0My/9g >そうだとしたら変な仕様ですね。 これが無かったら小言書かなかったけどな MS相手にどっちが上から目線なんだか かてて加えて減らず口叩かれるとは いやはや チラとWeb巡ったら難問袋小路問題で以前からあった疑問なのは判った 条件付き書式をVBAで制御するときに注意すること でググれば一番上に出てくるであろうサイトでは 2013をベースに「・・・すること」とか断言してるが、どうなんだ? hatena さんのサイトでは別問題として画面がチラつくと仰ってる その
サイトの途中にあるリンク先 ↓ (アドレス貼ると書き込みできないから省略 YU-TANG さんは既にアーカイブでしか見られないしVerも古いが 3つしかできないのを工夫で5つまで可能にしてる(らしい 詳細は未チェック) そのサイトの最下段にあるリンク先 ↓ (ry で、そこから誘導されたこちらもアーカイブなLebans 氏のサンプル(らしい 詳細は未チェック) 帳票フォームをサブクラス化して 云々 悪魔の技とYU-TANGさんは大絶賛してる 驚くことにアーカイブだがファイル落とせる 自分では必要に迫られたこと無かったから無頓着だったが、な
るほどね みなさん悪戦苦闘してるんですね http://mevius.5ch.net/test/read.cgi/tech/1544620479/170
171: デフォルトの名無しさん [sage] 2020/10/14(水) 02:48:02.48 ID:zZVeC8zp accessは質問者に小言を言う人が多い印象。 いわゆるIT土方が多いからかねえ。 余談だけど世間に流通している商品のVBAを覗くとひどいコードの多さに驚く。そういうコードを書く人が質問者相手にがストレス発散してる気がするなあ。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/171
172: デフォルトの名無しさん [sage] 2020/10/20(火) 06:46:57.60 ID:RpHsdUuc ACCESSは後継者が少ないから先輩面したくても出来ないって人が多いのでは。 私も後輩が欲しい。育成では無く先輩面目的で(だからダメなんだろうね)。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/172
173: デフォルトの名無しさん [sage] 2020/10/23(金) 06:48:31.50 ID:LIFEWQB+ Access2016を使っています VBAを使いcsvファイルを取り込もうとしているのですが取り込み先のファイルの名前全てにピリオドが入っており、例1333.T.csv ピリオドが邪魔でファイル名を指定してもうまく取り込めません 何か良いアイデアはないでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/173
174: デフォルトの名無しさん [sage] 2020/10/23(金) 17:06:19.46 ID:jTOWYlOX csvファイルに名前付けのルールとかがあって、規則性があるなら Left Mid Right 辺りを交えて工夫 全く一貫性が無いとかなら . を ppp とかにリネームする工夫 https://soudan1.biglobe.ne.jp/qa2877385.html ←これってこと? http://tsware.seesaa.net/article/214574472.html ←ここにもヒントが http://mevius.5ch.net/test/read.cgi/tech/1544620479/174
175: デフォルトの名無しさん [sage] 2020/10/24(土) 06:13:20.49 ID:3Br09s+m >>173 私はファイル選択、コピー、インポート、コピーしたファイルの削除、と言う手順でデータを取り込んでます。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/175
176: 173 [sage] 2020/10/24(土) 23:19:53.94 ID:s9oXa8gi >>174 ありがとうございます ファイル名は規則性があるのでLeft Mid Rightを使ってドットをスルーして取り込みをするやり方を探してみます >>175 こちらはファイルコピーをしてドットのない名前に変換してからインポートといった感じでしょうか初心者すぎてまだ色々理解できていないですが道筋がみえましたありがとうございます http://mevius.5ch.net/test/read.cgi/tech/1544620479/176
177: デフォルトの名無しさん [sage] 2020/11/21(土) 02:09:02.77 ID:OkL4O3GG ACCESS365?でadoの話。 昨日、テーブルメンテナンス用にプログラム書いて、テストでupdateメソッド行をコメントアウトして実行したのにレコードが更新されて焦った。幸い意図した通りの更新が出来たので問題は無かったのだが、こんな事有る? http://mevius.5ch.net/test/read.cgi/tech/1544620479/177
178: デフォルトの名無しさん [sage] 2020/11/21(土) 19:58:38.03 ID:4nufVV0K 通常ではあり得ない動作ですから accdbが破損しているか 思い違いしているか じゃないですかねぇ http://mevius.5ch.net/test/read.cgi/tech/1544620479/178
179: デフォルトの名無しさん [sage] 2020/11/22(日) 23:10:13.61 ID:DuDUZZqW だよね、自分の事じゃなければ私もそう思う。明後日に追試してみます。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/179
180: デフォルトの名無しさん [sage] 2020/11/25(水) 18:43:23.08 ID:q3XRT9ff >177 ADOだと、Updateメソッド実行しなくてもレコードが保存される条件があったはず https://docs.microsoft.com/ja-jp/office/client-developer/access/desktop-database-reference/update-method-ado >Update メソッドを呼び出すより前に追加中または編集中のレコードから移動すると、ADO によって自動的に Update が呼び出されて変更内容が保存されます。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/180
181: デフォルトの名無しさん [sage] 2020/11/26(木) 22:16:38.24 ID:jD11+CM5 >>180 これか、ありがとう。 だとしたらupdateメソッド要らなくね?よく分からんが。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/181
182: デフォルトの名無しさん [sage] 2020/11/27(金) 16:20:14.12 ID:j3fR6c+j レコード移動しないけど変更を保存したいときに必要だろう http://mevius.5ch.net/test/read.cgi/tech/1544620479/182
183: デフォルトの名無しさん [sage] 2020/11/29(日) 20:06:15.16 ID:k+jvWZ30 >>182 それはそうね http://mevius.5ch.net/test/read.cgi/tech/1544620479/183
184: デフォルトの名無しさん [sage] 2021/01/11(月) 16:27:04.20 ID:HFGgd7VU ACCESSのSQLでビット比較ってどうすればいいですか (value & 0x10) == 0x10 みたいに特定のビットが立ってるか比較したいのですが http://mevius.5ch.net/test/read.cgi/tech/1544620479/184
185: デフォルトの名無しさん [sage] 2021/01/11(月) 17:56:37.60 ID:qzYYjSUA できるかわかりませんが、 (value and &H10) = &H10 だとダメですか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/185
186: デフォルトの名無しさん [sage] 2021/01/12(火) 19:10:42.78 ID:f1Ulh51r >>185 試してみます、ありがとうございます http://mevius.5ch.net/test/read.cgi/tech/1544620479/186
187: デフォルトの名無しさん [sage] 2021/01/12(火) 19:16:56.91 ID:f1Ulh51r ダメでした andを&に変えてもダメでした http://mevius.5ch.net/test/read.cgi/tech/1544620479/187
188: 185 [sage] 2021/01/12(火) 19:30:22.83 ID:sGnBc5NV そっか、SQLのAND演算子になっちゃうのか… &も文字列の結合演算子とみなされちゃうのかな? &H10のビット限定なら、 (value \ 16) MOD 2 でいけそうですが、他にもパターンがあるでしょうから… http://mevius.5ch.net/test/read.cgi/tech/1544620479/188
189: 185 [sage] 2021/01/12(火) 19:34:25.38 ID:sGnBc5NV 何より分かりにくいですねw 整数除算(\)で該当のビット位置を一番右にずらして、MODでそのビットを取り出します http://mevius.5ch.net/test/read.cgi/tech/1544620479/189
190: 185 [sage] 2021/01/12(火) 19:49:06.45 ID:sGnBc5NV 16 じゃなくて &H10 と書く方が取り出すビットと一緒で分かりやすいですね(うまくゆくかはわかりませんが) (value \ &H10) MOD 2 http://mevius.5ch.net/test/read.cgi/tech/1544620479/190
191: 185 [sage] 2021/01/13(水) 02:15:13.93 ID:+GyFVgd4 連投すみません 188案は value が long型だとして、値が負数のとき正しい結果にならないことがあります ごめんなさい http://mevius.5ch.net/test/read.cgi/tech/1544620479/191
192: デフォルトの名無しさん [sage] 2021/01/13(水) 17:32:20.96 ID:Mb95xbD5 >>188-191 親切にありがとうございます。 \とか使えるのは知りませんでした。 試してみます http://mevius.5ch.net/test/read.cgi/tech/1544620479/192
193: デフォルトの名無しさん [sage] 2021/01/13(水) 17:50:48.61 ID:+yZZ5ziS Windows10、Access365です。 Excelファイル上のデータに対して、ADOでアクセスして、データを取り込んでいるのですが、時間がかかります。 時間を短縮する方法はないでしょうか。 データは1ヶ月分9万件程度ですが、Accessのテーブルに取り込むのに、7分程度かかります。 テーブルのレコードの追加は、データ1件1件に対して、ADOのAddNewメソッド、Updateメソッドで追加しています。 試しに手動でAccessのインポート機能を使用して1ヶ月分のデータを取り込んでみたの
ですが、時間はかからなかったのですが、F20、F21など、空白の列まで要求されました。 そのためこの手段はあまり良くないと思っています。 レコードセットを一気にInsertする方法とかないでしょうか。 よろしくお願いします。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/193
194: デフォルトの名無しさん [sage] 2021/01/14(木) 01:33:57.64 ID:yNTWs1ET 一件一件Updateするんじゃなくて、UpdateBatchでバッチ更新してみるとか http://mevius.5ch.net/test/read.cgi/tech/1544620479/194
195: デフォルトの名無しさん [sage] 2021/01/14(木) 01:41:15.38 ID:yNTWs1ET >>187 ふつうに>>185でできるはずだけど valueの型が数値じゃないんじゃ? http://mevius.5ch.net/test/read.cgi/tech/1544620479/195
196: デフォルトの名無しさん [sage] 2021/01/14(木) 03:34:32.57 ID: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 になります http://mevius.5ch.net/test/read.cgi/tech/1544620479/196
197: デフォルトの名無しさん [sage] 2021/01/14(木) 05:18:36.84 ID:ecyWCD0F 知恵袋はあてにならんくて http://mevius.5ch.net/test/read.cgi/tech/1544620479/197
198: デフォルトの名無しさん [sage] 2021/01/14(木) 12:53:46.92 ID:kpvbRWbL >>196 ありがとうございます 試しに1行をInsertしてみたところ、3分程度で処理できました。 ただ、.AddNewの方も、同じデータで3分-7分のくらいで処理できたので、思ったよりも処理速度は改善しませんでした。 あと、Nullだけのレコードが入ってしまうことも難点でした。 取り込みたいデータを取り込めたのと、列が30列くらいあり書き換えに時間がかかるので、一旦は今のままでいこうと思います。 ただ、今後も同じようなデータの取り込みがありそうです。 他に
効率的なデータ入れ込み方法がありましたら、お教えいただけると幸いです。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/198
199: デフォルトの名無しさん [sage] 2021/01/14(木) 16:43:18.02 ID:eeXKDacn >>198 ループ中の AddNew を SQL の INSERT に置き換えたのでしょうか? インポート対象(9万件程度)を1度の INSERT で行います Null レコードは Where で除外可能かと思います 現実的なのは SQL 直発行かインポート機能の2択かと思います インポート機能も定義を固めれば使い物になります 効率というのは人によって変わります 普段からコードに触れている人なら VBA からの SQL 発行が効率的 コードは書かないが Access を使い慣れている人ならインポート機能や
クエリ定義が効率的 両者の方法とも取り込み実行時間はほぼ同じです http://mevius.5ch.net/test/read.cgi/tech/1544620479/199
200: デフォルトの名無しさん [sage] 2021/01/14(木) 18:14:16.61 ID:EmIfgllR >199 いえ、INSERT SELECTからの列指定をして一気に入れ込みました。実験的に1列のみを。 インポート機能とSQLでの処理は速度が違う気がするのですが本当でしょうか? テーブルへの書き込み方が根本的に異なるような気がします。 DoCmd.TransferSpreadsheet はぜひ使えるようになっておきたいですね。 エラーがよくわからないので今まで使っていませんでした。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/200
201: デフォルトの名無しさん [sage] 2021/01/14(木) 21:01:21.37 ID:yNTWs1ET >>200 全体で1トランザクションになるようにトランザクション張るか UpdateBatchで更新するか試してみてくれ http://mevius.5ch.net/test/read.cgi/tech/1544620479/201
202: デフォルトの名無しさん [sage] 2021/01/14(木) 23:19:32.20 ID:KOTB1sbE >>201 ありがとうございます 参考にしながらやってみます。 https://www.google.co.jp/amp/s/foolexp.wordpress.com/2011/11/07/%25E5%2588%2587%25E6%2596%25AD%25E3%2581%2597%25E3%2581%259F%25E3%2583%25AC%25E3%2582%25B3%25E3%2583%25BC%25E3%2583%2589%25E3%2582%25BB%25E3%2583%2583%25E3%2583%2588%25E3%2581%25A8%25E3%2583%2590%25E3%2583%2583%25E3%2583%2581%25E6%259B%25B4%25E6%2596%25B0%25E3%2583%25A2%25E3%2583%25BC%25E3%2583%2589/amp/ http
s://docs.microsoft.com/ja-jp/sql/ado/guide/data/sending-the-updates-updatebatch-method?view=sql-server-ver15 あと、トランザクションの以下のコードですが、参考にしようと思うのですがこれは全体で1トランザクションになっていますか? https://excel-excel.com/tips/vba_299.html http://mevius.5ch.net/test/read.cgi/tech/1544620479/202
203: デフォルトの名無しさん [sage] 2021/01/15(金) 12:06:52.83 ID:Z+pTsb/B >>199 もう一度SQLでやってみたところ、インポートと同じ時間で処理できました。 ありがとうございます >>201 UpdateBatchでは処理時間に違いがありませんでした レコードセットへの書き込みに時間がかかっているのかもしれません。 ありがとうございます http://mevius.5ch.net/test/read.cgi/tech/1544620479/203
204: デフォルトの名無しさん [sage] 2021/01/16(土) 21:45:45.19 ID:wM/4uvwh >>161 資格をモチベにしてる http://mevius.5ch.net/test/read.cgi/tech/1544620479/204
205: デフォルトの名無しさん [sage] 2021/01/26(火) 12:20:07.19 ID:pY3ojVqI ウチの社内の情報システムの制限でwindowsカメラアプリが制限されてるんだけど、VBAで無理矢理動かせないだろうか、、、 いろいろ検索してみても古い情報しかなくて、、 64bit版でも出来るようなプログラムの見本とか有れば助かる。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/205
206: デフォルトの名無しさん [sage] 2021/01/26(火) 12:31:00.16 ID:bIVSUY/u そんな事してバレたら懲戒処分にならない? http://mevius.5ch.net/test/read.cgi/tech/1544620479/206
207: デフォルトの名無しさん [sage] 2021/01/26(火) 21:32:09.76 ID:0moyOenU >>206 少し言い方が悪かったかな。 端末でWEB会議してるから、カメラを使うのは問題無いんだけど、静止画を撮るソフトが入っていないもんで、静止画を撮ってDBと紐づけたいってなると、できなくて。 小規模グループでAccess使ってるから、システムに相談しても本気でかけあってくれなくて、、 それだったらVBAでどうにかならないかと思って。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/207
208: デフォルトの名無しさん [sage] 2021/01/26(火) 22:49:05.99 ID:5iMVHv+0 >>207 より悪いんだけど http://mevius.5ch.net/test/read.cgi/tech/1544620479/208
209: 204 [sage] 2021/01/27(水) 17:26:57.82 ID:Nmg5vWMl スタンダード受かった(^ω^)v http://mevius.5ch.net/test/read.cgi/tech/1544620479/209
210: デフォルトの名無しさん [sage] 2021/01/29(金) 13:44:54.10 ID:Xkyf+iIu >>209 もめでとう! 資格は財産! 凄いなスタンダードは http://mevius.5ch.net/test/read.cgi/tech/1544620479/210
211: デフォルトの名無しさん [sage] 2021/01/29(金) 16:32:16.97 ID:SG5MocSx >>210 ありがとう。マイナー資格のせいか、 テキストは悪評にも関わらず他に選択肢ないし、 そのテキストもアプリもやたら高いけど、 一発合格のために全部ちゃんと買ったわー。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/211
212: デフォルトの名無しさん [sage] 2021/01/31(日) 10:42:42.16 ID:/4jghnKY VB自体マイナーよりなのがね。。。 参考書の著者は名のある人(武藤玄さん?)だから安心でしょ http://mevius.5ch.net/test/read.cgi/tech/1544620479/212
213: デフォルトの名無しさん [] 2021/02/01(月) 19:30:44.14 ID:JChayj2G 「課題テーブル」 の項目「ファイル:添付ファイル型(拡張子は.xlsx)」をSQLで取得して(1)、 そのファイル名を変更して保存(2)しようと思っています。 (2)の処理は問題ないのですが、肝心な(1)の処理が分かりません SQLだと以下のような感じかと思うですが、これだと、「ファイル」の名称も取得すらできないようです。 なにかしらヒントをいただけないでしょうか。 検索にヒットするようなキーワードでもかまいません。 よろしくお願いいたします。 "SELECT ファイ
ル FROM 課題テーブル where ID = 1" (件数は1件) http://mevius.5ch.net/test/read.cgi/tech/1544620479/213
214: デフォルトの名無しさん [] 2021/02/01(月) 20:47:30.12 ID:g0s2XOHS ファイルを取り出したいのか、ファイル名を変えたいだけなのか、何がしたいのかがわからない。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/214
215: デフォルトの名無しさん [] 2021/02/01(月) 20:48:57.97 ID:g0s2XOHS ファイルをSELECTするとファイルが出てくるというのは奇妙な発想だな http://mevius.5ch.net/test/read.cgi/tech/1544620479/215
216: デフォルトの名無しさん [] 2021/02/01(月) 20:52:05.66 ID:1CLvOTQ1 >>214 ファイルを取り出したいんだけど、 SQLでなくクエリーでやるべきなの? 先日Access始めたから見様見真似。 添付ファイルを取得すれば、renameして保存するところはわかるんだけど。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/216
217: デフォルトの名無しさん [sage] 2021/02/01(月) 20:58:59.00 ID:90ziZ1xl エクセルファイルはAccessには入ってないだろ フォルダから取り出すのか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/217
218: デフォルトの名無しさん [sage] 2021/02/01(月) 20:59:30.52 ID:90ziZ1xl 何がしたいのかマジで分からんw http://mevius.5ch.net/test/read.cgi/tech/1544620479/218
219: デフォルトの名無しさん [sage] 2021/02/01(月) 20:59:46.61 ID:1CLvOTQ1 Accessのテーブルの添付ファイル型の項目に入っている http://mevius.5ch.net/test/read.cgi/tech/1544620479/219
220: デフォルトの名無しさん [sage] 2021/02/01(月) 21:01:37.65 ID:90ziZ1xl そのアドレスをエクセルで開いてリネーム保存すればいいじゃん http://mevius.5ch.net/test/read.cgi/tech/1544620479/220
221: デフォルトの名無しさん [sage] 2021/02/01(月) 21:03:39.26 ID:90ziZ1xl Dim MyExcel As New Excel.Application とか使って http://mevius.5ch.net/test/read.cgi/tech/1544620479/221
222: デフォルトの名無しさん [sage] 2021/02/01(月) 21:12:34.68 ID:1CLvOTQ1 >>221 それ使ってるんですけど添付ファイル型ってchar型とかと同じように扱えれるんですかね、 よろしければもう少しヒントを。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/222
223: デフォルトの名無しさん [sage] 2021/02/01(月) 21:22:03.72 ID:1CLvOTQ1 ファイルをディスクのどこかに保存するのは、SaveToFile メソッドですかね? なんか使えそうに思うけどいかがですか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/223
224: デフォルトの名無しさん [sage] 2021/02/01(月) 21:43:47.01 ID:FgW8bRhe そんな新しいAccessなんて持ってないから知らん http://mevius.5ch.net/test/read.cgi/tech/1544620479/224
225: デフォルトの名無しさん [sage] 2021/02/01(月) 21:44:43.65 ID:90ziZ1xl https://oshiete.goo.ne.jp/qa/8167605.html 添付ファイル型はレコードセットになっていて その中のフィールドのひとつ(3つ目。つまりF(2))がファイルネームになっていて、 それを取得する。らしい。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/225
226: デフォルトの名無しさん [sage] 2021/02/01(月) 21:45:48.50 ID:90ziZ1xl >>223 普通にSaveAsじゃあかんの? http://mevius.5ch.net/test/read.cgi/tech/1544620479/226
227: デフォルトの名無しさん [sage] 2021/02/01(月) 21:48:22.88 ID:c76bdQcs ありがとうございます。 少しヒントが得られたかも。 明日試してみます。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/227
228: 213 [] 2021/02/02(火) 11:31:56.15 ID: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 ------------------------------------------------------------------------------------ http://mevius.5ch.net/test/read.cgi/tech/1544620479/228
229: デフォルトの名無しさん [sage] 2021/02/02(火) 14:27:49.60 ID:CQc47MX2 それ、SQLとRSは無駄にVariantになってないか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/229
230: デフォルトの名無しさん [] 2021/02/04(木) 15:46:42.10 ID:QbGo6q9b OLEオブジェクト型はどうやってSQL(select 文)で抽出するの? http://mevius.5ch.net/test/read.cgi/tech/1544620479/230
231: デフォルトの名無しさん [sage] 2021/02/04(木) 20:11:15.64 ID:XRB3PpKu select文は普通に列名とテーブル指定するだけじゃないのか? そっからどうやってデータ取得するかはどうやってDBアクセスしてるかによるんじゃね とりあえずDAOかADOかとバージョンぐらい書け http://mevius.5ch.net/test/read.cgi/tech/1544620479/231
232: デフォルトの名無しさん [] 2021/02/04(木) 20:23:44.53 ID:w6PAg1HV >>228 ファイルを取得したいと言っていたのに、ファイル内のデータでよかったのか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/232
233: デフォルトの名無しさん [sage] 2021/02/05(金) 00:26:34.08 ID:OHtcWSU6 VBSでmdbに接続してaddnewしてupdateするだけの簡単なスクリプトの挙動がおかしい。 sub や Functionにして callすると成功するくせに、subじゃなくて素のスクリプトだと何もしない。 ちなみに読込みはどっちでも成功する。 なぜ、addnewのときだけ、プロシジャーである必要があるのだろうか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/233
234: デフォルトの名無しさん [sage] 2021/02/05(金) 00:34:27.19 ID:OHtcWSU6 vbseditがおかしいらしい。 適当なディレクトリに保存して実行したら素のスクリプトでも成功した。 わけわらん。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/234
235: 230 [] 2021/02/05(金) 10:13:06.16 ID: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 http://me
vius.5ch.net/test/read.cgi/tech/1544620479/235
236: デフォルトの名無しさん [sage] 2021/02/05(金) 13:09:23.30 ID:7kBPI4G7 VBS って、まだシステムで使えるのか? 保守されてる? http://mevius.5ch.net/test/read.cgi/tech/1544620479/236
237: デフォルトの名無しさん [] 2021/02/06(土) 11:30:21.47 ID:PohEB++t bytImage() の中身は docx に直接上書き保存できるものなのか? http://mevius.5ch.net/test/read.cgi/tech/1544620479/237
238: デフォルトの名無しさん [] 2021/02/07(日) 12:21:08.72 ID:EDRo6Y49 >>236 Windows 10そのものがまだ使っています。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/238
239: デフォルトの名無しさん [] 2021/02/26(金) 20:55:30.10 ID:BHdQltm/ AccessからOracleに接続して、テーブル定義を取得しようとした場合、Currentdbにリンクテーブル作成してtabledefで取得するしかないですかね? http://mevius.5ch.net/test/read.cgi/tech/1544620479/239
240: デフォルトの名無しさん [] 2021/02/26(金) 23:30:20.77 ID:aSS4VuLP >>239 そんな訳ないだろ お前の頭には無理ってだけだ http://mevius.5ch.net/test/read.cgi/tech/1544620479/240
241: デフォルトの名無しさん [] 2021/02/26(金) 23:38:57.64 ID:JyNwBwDQ >>240 どうやってやっているんですか? そんなに人に偉そうにいうくらいならお詳しいんですよね? http://mevius.5ch.net/test/read.cgi/tech/1544620479/241
242: デフォルトの名無しさん [] 2021/02/27(土) 00:39:35.09 ID:lzDnqtNz 一応言っとくが、あわしろ氏は権威だぞ。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/242
243: デフォルトの名無しさん [] 2021/02/27(土) 03:37:26.48 ID:oWYDZ6ol >>241 だからお前みたいな馬鹿には無理ってだけだ http://mevius.5ch.net/test/read.cgi/tech/1544620479/243
244: デフォルトの名無しさん [] 2021/02/27(土) 09:00:35.16 ID:kkUl7IkZ わからないんだろ? 教えられないのに質問スレでマウント取って かっこいいね! http://mevius.5ch.net/test/read.cgi/tech/1544620479/244
245: デフォルトの名無しさん [] 2021/02/27(土) 13:52:55.39 ID:oWYDZ6ol 馬鹿が聞き出そうとして必死だな 元の質問が、 「しかないですかね?」 だから、 「他にある。馬鹿にはわからないだけ」 これで完結 http://mevius.5ch.net/test/read.cgi/tech/1544620479/245
246: デフォルトの名無しさん [sage] 2021/03/12(金) 04:20:10.68 ID:U5Mc6cIw クライアントPC複数台にコピーしてあるaccdbの更新を自動化したいのですが、上手い方法が有ったらアドバイス下さい。 今は、終了時に更新版があればコピー専用のaccdbを開く、という方法です。 時々コピーに失敗したり、更新後の起動が出来なかったり、なんかスマートに出来ません。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/246
247: デフォルトの名無しさん [sage] 2021/03/12(金) 07:03:59.49 ID:bg4PRHHU それぞれのPCに共有サーバーでクライアント各々に1つのものを使ってもらえば? http://mevius.5ch.net/test/read.cgi/tech/1544620479/247
248: デフォルトの名無しさん [sage] 2021/03/12(金) 07:47:36.33 ID:vZYfq0zb え? http://mevius.5ch.net/test/read.cgi/tech/1544620479/248
249: デフォルトの名無しさん [sage] 2021/03/12(金) 15:03:23.20 ID:6lWZMdzy >>247 コメントありがとうございます。 共有フォルダに置いたテーブルだけのバックエンドや、データベースサーバーにテーブルがあり、フロントエンドにリンクして使ってます。 各クライアントのフロントエンドを更新したいのです。 フロントエンドを共有フォルダに置いて皆んなで使うと壊れやすい、50台のクライアント全て閉じてもらわないと更新できないなどの問題があり、現在のかたちで運用しています。 http://mevius.5ch.net/test/read.cgi/tech/154462047
9/249
250: デフォルトの名無しさん [sage] 2021/03/12(金) 16:26:24.53 ID:ZUwUvURf 基本的には別ブログラム(Accessでなくてもいい)で上書きしてもらうしかないけど タスクに登録して再起動してもらうとか さがせばそれ用のツールとかありそうだけどな http://mevius.5ch.net/test/read.cgi/tech/1544620479/250
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 538 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.019s