Excel VBA 質問スレ Part57

■ このスレッドは過去ログ倉庫に格納されています
2018/09/10(月) 21:42:39.57ID:K1uuwFLt
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK


※前スレ
Excel VBA 質問スレ Part56
http://mevius.5ch.net/test/read.cgi/tech/1534976724/
2018/10/06(土) 00:57:54.07ID:F9JdDpiN
>>575
1.入力するテキストファイルに「ろくでもない見えない文字」が含まれている(たとえば制御文字)
 →普通のテキストエディタでは見えないことが多いのでバイナリエディタで確認する
2.テキストファイルのレコードを読み取りセルに出力する処理のどこかに問題がある
 →特定のレコードで発生するということは、特定の文字列のパターンか、特定のレコード数でのみ発生している可能性もある
こんな月並みなことしか考えつかないな。
個人的には、文字化けだったとしたら全部縦線に置き換わるのはおかしいと思うが(化けた文字が一切見受けられず縦線だけってのが妙に気になる)
2018/10/06(土) 04:51:40.31ID:tnNc0I+3
とりあえず、どんなコードで読み取って表示してるか出さんと話にならんわ
2018/10/06(土) 07:12:44.67ID:GeqHzxmy
実はテキストファイルのエンコードがutf8とかだったりして
2018/10/06(土) 07:49:00.01ID:4qqF7BWz
メインフレームだからEBCDICだろ変換前はEBCDICの変換は面倒い
2018/10/06(土) 07:55:07.00ID:omtH0luh
EOTとかVTの類の制御文字な気がする
2018/10/06(土) 13:50:07.16ID:tnNc0I+3
>>561
SHIFT-JISのはずって言ってるし、ホスト側に大抵変換ツールあるだろ


文字コードや制御文字の可能性よりプログラムのバグの方が確率高い気がするなぁ
まあコード出せばどっちの問題かはだいたい判別できるはず
化けるデータのダンプでもいいけどな
2018/10/07(日) 13:12:34.96ID:DYNz6D7I
色々と意見ありがとうございます。
コードが掲示できなくて申し訳ないですが、
文字コードについてはホストの変換機能があるはずなので、プログラム上のバグとみてデバックしてみます。
2018/10/07(日) 15:35:18.94ID:RZXmBbwE
>>567
>>569
正解。

でも、頭の使い方を知らない人にとっては理解し難いんだろう。
頭を使う作業と単純作業を分けるのが自然になってる人はEndIfを先に書く。
他にもEndWithやNextも先に書くな。

Ifまで書いて条件をどこからかコピペするのに気付いた時はIf a Then...EndIfまで書いてからaと差し替えるとか。
あるいはaの差し替えは中身書いた後の時もあるな。
2018/10/07(日) 15:38:24.87ID:RZXmBbwE
>>577
文字化けはイミディエイトでは分からない場合も多い。
こういう時はデバック用にバイナリで出力するものを作っとくべきだね。
2018/10/07(日) 15:38:37.38ID:yvtwWR1t
そしてaの差し替えを忘れると
2018/10/07(日) 16:40:59.78ID:/7FmU20a
VBA「済まんのう、ワシのインテリセンスが貧弱なばっかりに・・・」
2018/10/07(日) 17:11:47.87ID:RZXmBbwE
>>587
二ワトリか?
2018/10/07(日) 19:18:32.78ID:b8EzOufK
>>585
閉じタグみたいな単純作業を人間がやるのは馬鹿らしいと気付いて別の言語に移行するのが大正解
591デフォルトの名無しさん
垢版 |
2018/10/07(日) 21:50:24.98ID:mIq+f5AO
で、pythonみたいな欠陥言語では空文という概念すらない
インチキな制御文で空文を回避する必要がある

つまり、cが言語として一番単純で簡単
2018/10/08(月) 10:32:35.37ID:nJmWXjgB
しかし少し待って欲しい
C言語が扱うのはDelegateじゃなくて
ポインタだから不慣れな人が使うのは結構危険
593デフォルトの名無しさん
垢版 |
2018/10/08(月) 10:58:07.65ID:Z4ZqXDLl
コードの作成ができる方がいらっしゃいましたら、助けていただきたいです。

https:〜〜/〜〜〜/〜〜.pdf
で終わるURLが1000件以上あり、業務でそのすべてを印刷しなければならないのですが、
1つ1つIEで印刷していくのが大変面倒で、VBAで一気に印刷することができないか
調べたのですが、.pdfで終わるファイルをwebから自動で印刷するのは不可能なようでした。

そこで、その1000件以上あるpdfファイルを一気にローカルに保存できないかと考えております。

具体的には、
A列にひたすらURLを貼り、マクロを起動するとローカルの任意のファイルにPDFが保存されていくようなVBAが組めないかと考えております。
(一気に印刷することができれば、尚よいのですが)

どなたかコードを組んでいただけないでしょうか。

お手数ですが、よろしくお願い致します。
2018/10/08(月) 11:21:42.19ID:H/mp1NsO
curl, wget で、ファイルをダウンロードできる
2018/10/08(月) 12:38:16.57ID:TfWfyeTE
ダウンロードやら印刷やらはPowershellならそれぞれ1コマンドで出来るんだけどね
VBAだとそこそこ面倒な気がする
2018/10/08(月) 12:47:36.35ID:rY44Et0R
両面2upで印刷とかだとpowershellでも大変じゃないの
2018/10/08(月) 12:59:10.13ID:fNYJDKkK
>>593
難しいだのなんだの言われてたけど、テキトーにやってたら簡単にできて拍子抜け
http://fast-uploader.com/start/7094526398997/

Book1.zip

Book1.xlsm
にリネームしてくれ

A列はファイル名
B列はURL
C列はokかNGか。アテになるかどうかはシランので、落とした後のファイル数はなどは確認したほうが良い

コードの編集は適当にやってくれ
今はテスト用に3つだけにしている
あと保存するファイル名は被らないようにかなり適当に作っている。適当に変えてくれ

で、pdf印刷はこの辺に任せるといいと思う
https://dekiru.net/article/1745/

あと、参考にしたサイト
https://tonari-it.com/excel-vba-windowsapi-urldownloadtofile/

特に何の関係もない、無害なサンプルpdfが置いてあったサイト
http://www.shikisensha.com/pdfs.html
2018/10/08(月) 13:00:47.95ID:wluWAmXV
>>593
powershellスレで聞いた方がいいよ
一括ダウンロードも印刷もけっこう簡単にできる
VBAでもできるけどちょっと面倒だから
2018/10/08(月) 13:16:18.75ID:fNYJDKkK
そこまで簡単にできるならもうここで書いてしまって良いんじゃない?
2018/10/08(月) 13:21:06.52ID:SdoZVitL
クレクレに割く労力など微塵もない
2018/10/08(月) 13:21:21.13ID:XarCorGP
>>593
そんなのjdownloader2とか
webブラウザのアドオン使えよw
2018/10/08(月) 13:36:20.93ID:fNYJDKkK
>>600
あれ、そうか
PowerShellあんまり知らないから見てみたかった
603デフォルトの名無しさん
垢版 |
2018/10/08(月) 15:25:31.11ID:41uO404m
>>593
死ねよ
2018/10/08(月) 15:55:52.70ID:fNYJDKkK
>>601
拡張機能探すのあんまり得意じゃないわ
結局作ったほうが早い

>>603
ざっこw
605デフォルトの名無しさん
垢版 |
2018/10/08(月) 18:30:52.01ID:lvy06Ht8
>>597
URLDownloadToFile というAPIがあることをいま知った。
これまで都度 MSXML2.XMLHTTP を作って .Open "GET" していた。
API一発ならその方がスマートだしプログラムをそれベースに書き換えようかと思ったけど、
IDとパスワードを渡さなきゃならない場合は使えないのかな?
2018/10/09(火) 01:51:39.58ID:FzGViRAL
N列に時刻データが入っている
但し一部の行はブランク

時刻データは"00:10:00"のように時・分・秒が指定されている
表上は"00:10"つまり「時・分」のみを表示

この時刻データの分の1桁目が9の時のみ1分繰り上げて0にしたい
つまり
"00:19:00"→"00:20:00"
"00:59:00"→"01:00:00"
になるようにしたい

セルは複数セルを不連続で選択し、ブランクはパスして
分の1桁が「9」の場合のみ1分繰り上げするにはどうすれば良いでしょうか?
2018/10/09(火) 03:48:33.30ID:GjEV7PXm
>>606
秒はどうするの?19分30秒だったら20分00秒にするってこと?

とりま、基本的な処理は分を10で割った余りを求めて、9だったら1を足す
それを選択された全セルに対して繰り返す
2018/10/09(火) 07:12:30.74ID:/OeVfiJl
>>606
O1=N1+IF(MOD(MINUTE(N1),10)=9,TIME(0,1,0),0)
609デフォルトの名無しさん
垢版 |
2018/10/09(火) 08:27:33.61ID:0K1bBeTL
>>565-586
Ruby で、そのテキストの該当部分を表示して、確かめる。
他の言語でもよい

>>606
いったん時刻に変換して、1分足してから、また元の形式へ戻す。
つまり、表示形式 → 時刻 → 表示形式
610609
垢版 |
2018/10/09(火) 10:04:43.66ID:0K1bBeTL
>>565-586
制御文字の可能性があるから、文字列をバイナリで見る

文字コードや、UTF-8 ならBOM の有無

セルに入力した時に、特別な意味を持つ文字が入っているとか?
シングル・ダブルクォーテーションなど?
611デフォルトの名無しさん
垢版 |
2018/10/09(火) 16:25:52.94ID:YqupZDTJ
会社で社内Webのform類のsubmitボタンを押して出てくるデータベースのデータが抽出されるシステムがあります。
(まあ、このようなシステムはどこにもあると思いますが。)
これ、どうにかして大元のデータベースのデータを丸ごとExcelにインポートする方法ってないですか?
Webのソースを見れば、データベースのサーバのアドレスが書いてあって、それをVBAで取り込む、みたいなのをイメージしているのですが
技術的には可能ですよね?
2018/10/09(火) 16:53:10.93ID:iuxGmBKG
技術的には可能だがお前には不可能
イメージが見当違いだ
2018/10/09(火) 16:58:57.67ID:ZX9nrIhI
WEBサーバ自体をハックできるなら。
大抵PHPか.Net実装でソースからは見えない
614デフォルトの名無しさん
垢版 |
2018/10/09(火) 16:59:23.34ID:YqupZDTJ
あまりわたしを怒らせないほうがいいぞ
わたしは怒ったら怖いんだぞ
2018/10/09(火) 17:21:21.07ID:ZX9nrIhI
コンプライアンス違反で懲戒解雇&賠償請求訴訟起こされたいのなら、止める義理はない
2018/10/09(火) 17:57:17.02ID:3Eshr90N
>>611
会社のシステムなら上司に相談しろよ
社内規定に違反すると最悪解雇もあるからな
2018/10/09(火) 18:10:23.08ID:MhhKJFZu
>>611
怒らせたくはないけどまともなシステムならクライアントから見えるところにデービーのアドレスは書かれてないよ
2018/10/09(火) 18:17:11.24ID:MhhKJFZu
クライアント↔Webサーバ↔DBサーバ
ブラウザがやり取りするのはWebサーバ
その先にはアクセス出来ないのが普通
2018/10/09(火) 18:18:22.93ID:alG4HLy2
普通に上司経由でシステムの所管部署に相談してAPIを共有してもらった方が安全だろ
自作コードでサーバーを直接叩くのはいろんな意味で危険
620デフォルトの名無しさん
垢版 |
2018/10/09(火) 19:14:35.52ID:AeEBE3gj
焦っとるなプロさんwおまえらプロさんのコードも十分すぎる程危険なんやがw
2018/10/09(火) 19:46:02.37ID:fy0WNSeQ
>>611
出発点から「自分で勝手に何かする」というのが間違い。
他の人も言うとおり、まずは自社で管理してるDBなら管理部署に、ベンダのシステムであればそのベンダに、やりたいことを伝えて対応してもらう。
対応してもらうのが無理なら、管理部署やベンダにAPI等を利用してツールを作成して良いか確認を取る。
もしOKなら、API等を利用してツールを自作する。完成したら必ず管理部署やベンタにツールを見てもらう。

勝手にベンダのAPIを利用してSQL発行ツール自作してクビ寸前まで行ったことがある人を知ってる。
大幅減俸で落ち着いたらしいけど今はもういないから実際のところどうだったのかは知らんが。
622606
垢版 |
2018/10/09(火) 20:01:04.99ID:FzGViRAL
>>607-609
ども!

ワークシート上なら"00:59:00"+"00:01:00"→"01:00:00"みたいに単純に繰り上げが出来るので
マクロで同じような計算が出来ないかと考えたんだけど(>>609さんのコメがそうかな?)
具体的な手順が思い当たらなかったので、原始的なやり方で作ってみました

strTime = Format(cell.Value, "hh:nn:ss")でセルの時刻を文字列に読み込み
時(strH)・分(strM)・秒(strS)を切り分け、分の1桁目が9の時だけ

intH = val(strH)、intM=val(strM)で数値化した値から
sumM = ntH*60 + intM + 1 
intH = int(sumM/60)、intM = sumM - intH *60 を計算し

これを時刻に直してセルに戻す、という手順で出来ました
2018/10/09(火) 21:10:44.20ID:KUCIqBg4
先週文字化けの件で質問をした者です。
あれから例のマクロをデバッグし、無事原因がわかりました。
文字コード云々ではなく、単純なロジックミスという落ちでした…。
お騒がせをしましたが、ご助言くださった方々ありがとうございました。
2018/10/09(火) 21:29:16.80ID:b4f5o7ms
オートフィルターをかけた状態の表を配列に取り込むには、Copy Pasteで一旦どこかに貼るしかないのかな?
2018/10/09(火) 21:52:35.13ID:ZX9nrIhI
>>623
クローズ報告ありがとさん、燻りそうだったのでクローズ連絡は助かる
2018/10/09(火) 22:00:23.20ID:fy0WNSeQ
>>623
やっぱそっちだったか。解決したようで良かったわ。
2018/10/09(火) 22:45:02.58ID:AYSUcKLB
>>624
ヒントはF5、表示セルのみ
628デフォルトの名無しさん
垢版 |
2018/10/09(火) 23:06:53.75ID:YqupZDTJ
>>616
>>621
信じられない。
なぜツール作っただけで解雇とか減給とか?
チームは違うけどチームの作業効率をはるかに高めることをするという非常にほめられることをするというのに。
別に会社になんの不利益も与えない。
2018/10/09(火) 23:19:05.15ID:/OeVfiJl
>>628
普通にある
>非常にほめられることをする
ほめられない

ってか考えが浅すぎるから本当に気をつけろ
2018/10/09(火) 23:44:23.50ID:fy0WNSeQ
>>628
問題は色々あるが、まずは許諾を得ずに勝手に構造を解析するということ。つまりリバースエンジニアリング。
次にシステム上想定していない勝手なSQLをこれまたシステム上想定していない勝手な方向から流すということ。

「会社のために」の枕詞を取り払えばこういうことになる。その枕詞が付いていたとしてもリスク管理の観点から非常に危ない。
特に、決められた手続き決められたデータが抽出できる環境がありながら全データ抽出したいとか、クラッキング以外の何ものでもない。
自分で勝手に作ったSQL発行ツールが原因でサーバに異常な負荷をかけてしまったら責任が取れるのか?
そのツールが悪意のある第三者に見られあるいは持ち出され、悪用されたら責任を取れるのか?

自分の会社に対する誠意を完全に証明できる自信があるとか、完全無欠に誰にもどこにも迷惑をかけないツールを作成できる自信があるとかなら、なおのこと手順を踏むべきだ。
黙ってやろうとすること自体が会社を納得させる自信のなさと会社への不誠実さの顕れだ。
631デフォルトの名無しさん
垢版 |
2018/10/09(火) 23:59:21.37ID:XhVkj+aM
大げさなやつらだな
普通に「ODBCでアクセスしたいからID発行してプリーズ」って管理部署に頼め
2018/10/10(水) 02:27:09.31ID:XHKsn4Nc
お前らビビりすぎだろ
外からDBアクセスできるなら
トランケートされても文句言えねえわ
2018/10/10(水) 02:27:50.97ID:XHKsn4Nc
真面目か
2018/10/10(水) 04:01:34.04ID:Vii71/zC
作成依頼です。

エクセルのA1セルに入力されている住所をgoogleearthで開きたいのです。
マクロでgoogleearthを立ち上げるとこまではshell関数で作ったのですが,そ
の先をどうすればよいのかさっぱりわかりません。
googleearth左上の検索のところにA1セルの住所を自動で入力して検索ボタンを押す,
というマクロを教えて頂けないでしょうか。

よろしくお願いします。
635デフォルトの名無しさん
垢版 |
2018/10/10(水) 04:15:39.03ID:2oZCcDsE
お前らが甘やかすからこういう全部作ってくれ馬鹿が調子に乗る
2018/10/10(水) 04:32:03.45ID:crh5hRT2
>>634
しね
よろしくお願いします
2018/10/10(水) 04:43:16.64ID:qywSzTWT
それは、ウェブページ・ブラウザの自動操作だろ?

iMacros, Selenium IDE とか。
それか、Ruby で、Selenium Webdriver を使う
2018/10/10(水) 07:20:01.37ID:R8Iewqe6
CREATE SESSION しかないに決まってるだろ
2018/10/10(水) 07:54:53.57ID:8C9bqvqY
>>634
hyperelink関数で良いんじゃないの
=hyperlink("https://earth.google.com/web/search/";&"皇居")
とか
640628
垢版 |
2018/10/10(水) 12:15:23.99ID:FaIKeQC1
>>630
大げさな。

ちなみにそのデータは顧客関係の個人情報は一切含まれてなくて、含まれているのは製品や購入パーツの在庫情報だけだ。
ある作業で、その製品や在庫パーツのあるデータを使って簡単な計算をしなければならず、
現状ではいちいちWebサイトで1個1個フィルードに入力してSUBMITボタンを押して出てきたデータをExcelに貼り付けてそれを計算しなければならない。
しかしそのデータベースをexportすることができればWebサイトで1個1個地道に長時間かけて手入力で全部データをコピペしなければならない。
こんなアホなことはできない。というかこんなアホなことを真に受けてまじめにしようとする人(うちのチームの人う)ことアホだ。
ちなみにWebからExcelにexportするためのボタンはあるがなぜかほしいデータが入らないようにしているため利用できない。
641デフォルトの名無しさん
垢版 |
2018/10/10(水) 12:17:07.30ID:FaIKeQC1
そのデータベースから一挙に全データをexportできれば
あとはvlookupを使ってすべての作業が一瞬で終わり。1分。
それができないから、上司からしめきりが1か月後みたいに設定されてる。
642デフォルトの名無しさん
垢版 |
2018/10/10(水) 12:18:25.21ID:FaIKeQC1
【誤】
ちなみにそのデータは顧客関係の個人情報は一切含まれてなくて、含まれているのは製品や購入パーツの在庫情報だけだ。
ある作業で、その製品や在庫パーツのあるデータを使って簡単な計算をしなければならず、
現状ではいちいちWebサイトで1個1個フィルードに入力してSUBMITボタンを押して出てきたデータをExcelに貼り付けてそれを計算しなければならない。
しかしそのデータベースをexportすることができればWebサイトで1個1個地道に長時間かけて手入力で全部データをコピペしなければならない。
こんなアホなことはできない。というかこんなアホなことを真に受けてまじめにしようとする人(うちのチームの人う)ことアホだ。
ちなみにWebからExcelにexportするためのボタンはあるがなぜかほしいデータが入らないようにしているため利用できない。

【正】
ちなみにそのデータは顧客関係の個人情報は一切含まれてなくて、含まれているのは製品や購入パーツの在庫情報だけだ。
ある作業で、その製品や在庫パーツのあるデータを使って簡単な計算をしなければならず、
現状ではいちいちWebサイトで1個1個フィルードに入力してSUBMITボタンを押して出てきたデータをExcelに貼り付けてそれを計算しなければならない。
しかしそのデータベースをexportすることができればWebサイトで1個1個地道に長時間かけて手入力で全部データをコピペする必要はない。
こんなアホなことはできない。というかこんなアホなことを真に受けてまじめにしようとする人(うちのチームの人う)ことアホだ。
ちなみにWebからExcelにexportするためのボタンはあるがなぜかほしいデータが入らないようにしているため利用できない。
2018/10/10(水) 12:23:41.33ID:ic51pubx
>>642
>>631
SELECT権限すらつけてくれないってなら殴れ
2018/10/10(水) 12:25:54.86ID:XztHvnca
システムを作る側の目線でいうと、UIベースで自動化しようとするのは迷惑だから頼むからやめろ
普通に権限を貰うか、システム改善を依頼してくれ
2018/10/10(水) 12:36:26.92ID:qywSzTWT
外部の部署が、DB に直接アクセスすることは、普通は認められない

他の部署の人が頼みにきて、裏口でやっている話はよくきくけど、危険な行為。
ルール自体を変えないで、ルール違反の形で、黙って下の者がよくやるけど、
上の者が把握・管理していないから、会社として成立していない

ドイツ車で、大問題になった。
下の者が、勝手にプログラムを書き換えていた
2018/10/10(水) 12:56:48.86ID:Zvsf2lMk
>>640
大げさでも何でもない。
Webから取ってくるのだって関係部署に連絡して承認をうけるのが普通。
ましてDBに直接繋げたいなら上司に相談しとけ。
2018/10/10(水) 13:12:18.23ID:ic51pubx
>>645
外部の部署と言うより「データは社内の共有データでDBはシステム部が所管している」
ように読めるけどね。
昨今のデータ活用・データ民主化の流れでエンドユーザにSELECTさせるのは当然になってる。
もちろん無断でやるなんてのは論外だが。
2018/10/10(水) 14:45:22.50ID:47KSV23N
>>627
どういう意味?
可視セルをそのまま配列に放り込んでも連続した部分しか取り込めない仕様だけど
2018/10/10(水) 16:35:31.34ID:Umu+TTue
今回ばかりはRubyさんの言う事が正しい気がする

今の人件費はこれだけです
RPAでやったらこうなります
DBへのアクセスを許可してもらえればこうなります
だからこうして欲しい、と、数字を出して説得するのが
いんじゃないかな
2018/10/10(水) 18:29:59.16ID:hH0ybitP
>>648
いや、改めて試したけどできるぞ?
2018/10/10(水) 19:13:54.40ID:YG2jN7++
>>649
アマチュアならこういう意識が薄くてもしょうがない
2018/10/10(水) 19:36:58.16ID:8C9bqvqY
>643
SELECTは危険ではないけど重くなるんだよ
特に初心者が書いたwhereもしないSELECTとか重くてかなわん
だから素直に頼んでくれ、ほんと

>>649
それでいいよ

全件SELECTしてからaccessでフィルタする奴は本気で死ねとしか思わん
653621
垢版 |
2018/10/10(水) 22:05:51.66ID:KAlixXjp
>>640-642
目的:Web系在庫管理システムのデータ抽出の際の項目選択の手間を省きたい
手段:以下の作業を自動実行する
 1.在庫管理データベースからすべての情報をその都度抽出する
 2.全データから必要な情報のみを抽出し、加工(計算など)を行う

この、小さな目的達成のために払うリスクがでかすぎることを解っていないところとか、
俺の知るクビになりかけた人物と同じこと言ってて流石に寒気がした。
もっともその人が作ったのはエンドユーザーが抽出条件をある程度自由にカスタマイズ・保存できる文字どおりのEUCツールで、
ハイコストなSELECTが発行されまくった結果システム全体のパフォーマンスが微妙に落ちて、それでベンダのSEが気づいたんだが。

はじめから管理部署なりベンダなりに相談しておけば:
A.システム内に解決する手段が既にあるかもしれない(標準のEUC機能に抽出条件を保存できたり)
B.システムで対応可能だったかもしれない(SEが管理する簡易的な抽出機能への追加など)
C.システムで対応できずともベターな解決手段を探れたかもしれない(APIへの接続許可など)

>>652も言っているがDBもサーバも回線(帯域幅)もタダではないし有限だし消耗品と思え。
2018/10/10(水) 22:12:58.00ID:R8Iewqe6
ユーザーに触らせたくないDBとEUC用DBの違いって何なんですかね?
2018/10/10(水) 22:14:25.01ID:8C9bqvqY
>DBもサーバも回線(帯域幅)もタダではないし有限だし消耗品と思え。
そうだね、業務用途のサーバーと回線は従量制と知らない人が多すぎる
逆に従量制じゃなければ全員に迷惑がかかるって事になり、それまた迷惑
開発の端の端にいるなら、回線ってとんでもない金額がかかってるって知っておいてほしい

自分のPC内でぐるぐる回すだけならまぁわからんでもないけどな
2018/10/11(木) 09:09:34.84ID:3Bdkvxy9
サーバー内で、ちゃんと絞り込みが出来ているかとか、
実行計画を見て、確認したり

高度情報処理資格のDB スペシャリストを取ったり、ミックの本を読んだり、
勉強した人しか、DB を触っちゃいけない
2018/10/11(木) 10:35:12.02ID:OPRsoT4p
DBスペシャリスト持ってないの丸わかりだな
DBスペシャリストで扱うのはデータモデリングやアプリケーション設計が中心で、
クエリチューニングのような運用寄りの出題はほとんどない
2018/10/11(木) 10:37:57.07ID:ljJfys9R
そんなハードル高くしてどうすんだよ
ビジネスで競争に負けてたらシステムの予算だって出なくなるんだぞ
659デフォルトの名無しさん
垢版 |
2018/10/11(木) 12:17:10.50ID:z21fIq1H
なぜか質問そっちのけでレベルの低いマウント取り合いになるプロさん達w
660デフォルトの名無しさん
垢版 |
2018/10/11(木) 12:37:03.82ID:r2SLIRPN
おれも素人だが、今回の件はいくらなんでもアホすぎる質問をした素人VBAerが悪いと思う
661656
垢版 |
2018/10/11(木) 12:55:04.68ID:3Bdkvxy9
DB スペシャリストの過去問題をやればよい

上司から、レコードの絞り込みが甘いと注意されました。
表設計をどう直しますか?

もちろん、出題されている
2018/10/11(木) 14:56:15.23ID:O4qg21v8
ExcelVBAのスレでいきなりDBスペシャリストの話題持ち出すのはどこのアホウなんだよ
2018/10/11(木) 16:13:58.69ID:L8oPmsqv
いきなりってわけじゃないけどな
それなりの流れがある
2018/10/11(木) 16:14:37.48ID:L8oPmsqv
VBAスペシャリストの皆さん
2018/10/11(木) 19:13:53.56ID:ZOLcqtf+
まぁ使用する範囲で同じ内容のテーブル作っておいて
マスターの方のテーブルの登録や更新、削除をトリガーとして
別途作った同じ内容のテーブルに反映させた側のテーブルを見に行くようにしたりする
システムには当たったことがあるけどね。

何にせよ余計なことはやらせない方が無難ではあるよ。
666デフォルトの名無しさん
垢版 |
2018/10/11(木) 20:25:53.87ID:xmZyhWmI
>>652
Accessのウィザードで作ったリンクテーブルやインポート使ってるんだけど
これって該当します?
sharePointのリスト取り込むときってどうするのがいいんだろう?
2018/10/11(木) 20:46:07.05ID:Y5yLaTkx
>>666
勝手に接続してるなら、どういう方法だろうとアウトと思っておいたほうがいい

重さで言うなら、SQL直接書くかせめて確認するのが一番確実
とにかく最初にwhereでフィルタするんだ
そのフィルタしたテーブル同士で結合したりするんだ。それだけ覚えておけばどうにかなる
リンクしてるだけだと特に意味はないわ
ってかこの辺はDB板行ったほうがいいだろう
668デフォルトの名無しさん
垢版 |
2018/10/11(木) 20:54:31.19ID:Pm0hH2qh
SELECT TOP 100 * FROM TableA
2018/10/12(金) 17:32:15.43ID:PXpuxPjv
許可もらわんと管理部門から逆にIPたどられて社内のPCから不正なアクセスが頻繁にあるって言われなければいいね
670デフォルトの名無しさん
垢版 |
2018/10/13(土) 18:47:47.50ID:L3Dj2/gz
コレがエクセルのシートしか使えないヤツラの知能の限界
しょうがない
どこにインデックスはってるか見もせずに
where句で巨大なテーブルをいきなり検索したりするからな
そしてフルスキャンになる

そしてcountで件数を確認もせずにいきなり大量抽出する

知能が低いヤツラにSQLさわらせるとこうなる
もうね予見できるワケ
671デフォルトの名無しさん
垢版 |
2018/10/13(土) 18:51:04.15ID:L3Dj2/gz
低学歴知恵遅れの知能が低いヤツにSQLはキチガイに刃物
低学歴知恵遅れの知能が低いヤツにオブジェクト指向はキチガイに刃物

銃刀法違反なみの重罪

コレは定説
2018/10/13(土) 18:53:51.58ID:T9MlimPF
キチガイ登場
こわい
673デフォルトの名無しさん
垢版 |
2018/10/13(土) 19:04:43.08ID:L3Dj2/gz
そもそもdbにはいっぱい個人情報が一杯つまってる
こっちのほうが重大な問題だからな

表ごとにセキュリティレベルがあるのも当然
そういった制限すらないのはヤバイ会社

だれがいつそういった情報を取得スしたか
どんな業務で誰の承認で取得したか
ちゃんと履歴が必要になる
2018/10/13(土) 21:11:38.49ID:iFQl0LJl
いっぱい一杯
2018/10/13(土) 22:25:56.64ID:/vvsi1/9
Excel VBAの話をしてよ
676デフォルトの名無しさん
垢版 |
2018/10/14(日) 00:37:19.40ID:Q3eQCyRU
excel vbaで語ることなんかあんの
excel vbaで語るなら、それを併用して得られるメリットぐらいしかない

excel vbaでなんかいいことあった?
2018/10/14(日) 10:50:03.22ID:xKzvoEYL
>>676
おまえはなんの話をしているんだ?スレ名読めんのか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況