19/03/16 20:39:09.64 6HWXzj9o.net
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part59
スレリンク(tech板)
2:デフォルトの名無しさん
19/03/16 20:39:59.29 6HWXzj9o.net
何で誰も立てないの
3:デフォルトの名無しさん
19/03/16 21:14:45.74 BICk2jMh.net
>>1乙だけどワッチョイ抜けてる…
4:デフォルトの名無しさん
19/03/16 21:48:42.20 dHb5YcPj.net
>>2
もう必要ないから
5:デフォルトの名無しさん
19/03/16 23:05:16.78 52o7PX0a.net
>>2
未回答の質問が特になかったから
6:デフォルトの名無しさん
19/03/17 01:48:38.37 F3UCopkF.net
前スレの最後の方で承認欲求モンスター共がAccessの話でマウント合戦初めて、もうみんなこのスレ要らないやって思ってたんだぞ
7:デフォルトの名無しさん
19/03/17 08:15:42.60 L17xYYyd.net
次からAccessスレも含めて↓でいいんじゃないかな
ここ無くなって↓あるの初めて知った
最近outlookVBA使い始めたんだけど、もっと早く使うんだったと後悔
VBAなんでも質問スレ Part2 [転載禁止]©2ch.net
スレリンク(tech板)
8:デフォルトの名無しさん
19/03/17 08:40:24.61 n1sOdbaQ.net
やっと出来たか
前のExcel VBAのスレで、次スレ検索したら、Accessの
スレリンク(tech板)
が出てきたぞ
VBAは全部まとめていいんじゃねえか?
9:デフォルトの名無しさん
19/03/17 09:42:14.71 168XCQuT.net
お願いします。
Sub teust()
n = Cells(Rows.Count, "b").End(xlUp).Row + 1
Range("b" & n).Select
ActiveCell.FormulaR1C1 = Sheets(2).Range("i4")
End Sub
a b c b …
ってやってるですがB列だけ9個下に表示されます。
考えられる原因はなんでしょうか(泣)
abcb…はコピペしてるので何故かB列だけ下に行きます
10:デフォルトの名無しさん
19/03/17 11:43:51.79 zQ1XyGkC.net
>>9
Cellsで参照してるアクティブシートのB列だけ、最終行であるべき行よりも9行下に余計な値の入ったセルがあるとかじゃない?
変な空白が入ってたり、表の欄外に他人が勝手にコメントつけてたりとかありそう
11:デフォルトの名無しさん
19/03/17 12:05:15.62 ZlmVE6mc.net
MsgBox Range("B" & n).Value
とか一度やってみて
同じような事が起きたことあるけど
会社のおっさん上司が白色の文字をそのセルに置いてたわ
12:デフォルトの名無しさん
19/03/17 14:35:17.64 zQ1XyGkC.net
コンソールの使い方知ってるならDebug.Print n とかDebug.Print Range("B" & n).Value でも良し
13:デフォルトの名無しさん
19/03/17 16:19:59.54 5mJrF7aW.net
>>9
正直、コードが微妙に感じる。
1行で済むだろ。
それと、ブックとかシートは余程のことが無い限り省略しない方が良い。
14:デフォルトの名無しさん
19/03/17 17:40:29.60 aVImaY3T.net
>>8
良いと思う
15:デフォルトの名無しさん
19/03/17 20:10:18.97 zQ1XyGkC.net
>>13
そういうコメントするなら一行コードを書いてあげるのが親切じゃね
16:デフォルトの名無しさん
19/03/17 20:52:23.19 5mJrF7aW.net
>>15
sht.Cells(sht.Rows.Count,2).End(xlUp).Offset(1,0).FormulaR1C1=Sheet(2).Range("I4").Value
とかかな。
FormulaR1C1とかValueは適宜実際に併せて変えてくれ。
Sheet2のI4に式が入ってるとは思えないから両方Valueで良いような気がする。
17:デフォルトの名無しさん
19/03/17 21:43:54.03 aVImaY3T.net
>>16
実際書いちゃう人大好き
18:デフォルトの名無しさん
19/03/17 23:17:32.63 5mJrF7aW.net
別に1行にすべきというわけじゃ無い。
.SelectとActiveCellが良くないということ。
あと、元の情報が無いのとスマホで書いたからブックは省略したけど、自分が組んでたら省略はしない。
19:デフォルトの名無しさん
19/03/19 02:31:46.42 vV4Rcm78.net
入力のあったセルの場所が分かったとしても、また同じ事が起きそう
入力させるセルと出力するセルはハッキリ分けた方がいいと思うよ
20:デフォルトの名無しさん
19/03/19 06:29:25.90 4N2t7FIS.net
みんなこっちにいるよ
スレリンク(tech板)
21:675
19/03/19 12:34:39.62 ipysPyU9.net
確実に全セル入力されてる列があるならそれを基準に使う手もアリ(例えば項番の列とか)
22:デフォルトの名無しさん
19/03/19 12:37:36.01 cTNTzw16.net
新しくシートを作成するコードで、
シート名をInputboxで入力させるんだけど、
もし名前が被ったときに、エラーを回避して
Subを終わらせることってできる?
シートも結構いっぱいあるから
「名前が一致したとき」にExit Sub
ってのはやりたくないんだけど…
23:デフォルトの名無しさん
19/03/19 13:02:44.27 ajcvehyS.net
>>22
For Eachで全シートの名前と比較して、同じのがあったら作らない
24:デフォルトの名無しさん
19/03/19 13:09:43.79 B40U/hNg.net
>>23
最後の3行が無ければ俺も同じ事をレスしてた
25:デフォルトの名無しさん
19/03/19 13:19:11.43 SqXQzXb0.net
>>22
最初に名前があるかどうかの処理をかませばいいだけ
シート作ってから一緒に何かしようとするとややこしいしミスするからオススメできない
Sub foo()
希望シート名 = InputBox("シート名を入力")
For Each 既存シート In ThisWorkbook.Worksheets
'小文字半角に変換、統一して比較
If StrConv(希望シート名, 6) = StrConv(既存シート.Name, 6) Then
MsgBox ("既にあるシート名でした。終
26:了します") Exit Sub End If Next Set 新シート = Worksheets.Add 新シート.Name = 希望シート名 '新シートで処理 End Sub
27:デフォルトの名無しさん
19/03/19 15:13:53.64 rooN1XdM.net
>>23
>>24
>>25
ありがとう!
試してみますわ
28:デフォルトの名無しさん
19/03/19 15:26:37.07 rooN1XdM.net
できたー!ありがとうございました!
まさにこれっすー!
29:デフォルトの名無しさん
19/03/19 19:23:19.44 kI5HhWJr.net
オレはループ回すの面倒(遅い?)から on errorでやるわ
30:デフォルトの名無しさん
19/03/19 19:31:40.14 gEDMHfls.net
on errorってエラーの決め打ちじゃなくて「このエラーが出るはず」という使い方だから、他の手段があるならあまり積極的には使わない方がいいと思う
31:デフォルトの名無しさん
19/03/19 19:59:00.27 G9/JqRut.net
tryか
32:デフォルトの名無しさん
19/03/19 22:17:46.56 fSzJr70Z.net
on errorの場合はworksheets.add.nameで作ってエラー時はActiveSheet.Deleteみたいな処理にすんのかな
不測の事態が起きそうで怖いけど
33:デフォルトの名無しさん
19/03/19 22:26:38.38 4+n02oxf.net
シートに配置したフォームコントロールのボタンのクリックとマクロを関連付けています
この時、ボタンのテキストを取得する方法はありますか?
Application.Caller
だと名前は取得できるのですが
ボタンの名前をテキストと同じものに変更する、でも良いです
34:デフォルトの名無しさん
19/03/19 22:31:52.70 aHt3ijA4.net
>>16
ブック.シートをwithでくくりたい(´・ω・`)
35:デフォルトの名無しさん
19/03/19 22:49:35.77 gEDMHfls.net
>>32
ボタンのテキストはどうやって設定した?captionプロパティじゃないのか?
36:デフォルトの名無しさん
19/03/19 23:00:11.13 4+n02oxf.net
>>34
手作業です
37:デフォルトの名無しさん
19/03/19 23:02:44.80 gEDMHfls.net
>>35
ボタンに表示している文字の事を言ってるなら、手作業でもなんでもcaptionプロパティに入れてるはずだが
38:デフォルトの名無しさん
19/03/19 23:07:48.99 8F1IYR8J.net
リストボックスのリストを更新した時クリックイベントが発生するのは何故?
39:デフォルトの名無しさん
19/03/19 23:14:34.15 4+n02oxf.net
>>36
そのcaptionプロパティを取る方法が分からないのです
URLリンク(i.imgur.com)
引数としてオブジェクトが渡されるわけでもないし、何か方法はあるのでしょうか
40:デフォルトの名無しさん
19/03/19 23:21:08.44 gEDMHfls.net
>>38
ボタンのオブジェクト名.caption
41:デフォルトの名無しさん
19/03/19 23:22:51.25 gEDMHfls.net
ボタンに限らずプロパティの指定の仕方はみんな同じ
42:デフォルトの名無しさん
19/03/19 23:22:59.66 Ocf5WOX6.net
いろんなボタンにおんなじハンドラ割り当ててるんでしょ?
43:デフォルトの名無しさん
19/03/19 23:29:58.14 4+n02oxf.net
>>39
えぇ、それは
44:分かるんですが >>41 そうです 複数のボタンのclickイベントに同じマクロを登録し、 clickしたボタンのcaptionを取りたい https://i.imgur.com/IWsgjEQ.png
45:デフォルトの名無しさん
19/03/19 23:33:09.14 n4w5LXnr.net
>>42
マクロと言ってる時点で死ねよ
46:デフォルトの名無しさん
19/03/19 23:34:33.07 vV4Rcm78.net
>>38
OLEオブジェクトのコレクションからnameプロパティの一致する物を探すとか
47:デフォルトの名無しさん
19/03/19 23:34:51.64 gEDMHfls.net
じゃあSheet1.buttons(application.caler).captionは?
48:デフォルトの名無しさん
19/03/19 23:38:15.01 vV4Rcm78.net
少々強引だが、apiのGetCursorPos関数でマウスポインタの場所のコントロールを取得って方法もある
49:デフォルトの名無しさん
19/03/19 23:52:25.41 oXoLOC/c.net
随分むごまっこっるた方法だな。
50:デフォルトの名無しさん
19/03/20 00:28:31.79 6ln9W50J.net
>>43
一見イベントハンドラですが、thisが使えない、オブジェクト渡さないイベントハンドラはハンドラと言えるのでしょうか
個人的には、ハンドラという方が逆に混乱すると思いますのであえて言っていません
>>45
うおおおおおおできましたああああああああすごい!!!!!
URLリンク(i.imgur.com)
>>44>>46
ありがとうございます!
51:デフォルトの名無しさん
19/03/20 00:31:55.82 6ln9W50J.net
あと、>>45さんの
Sheet1
というオブジェクトも気になります
sheet(1)
のエイリアスが自動的に生成されてると思いますが、MSDNでどのように調べると良いでしょうか?
52:デフォルトの名無しさん
19/03/20 00:32:23.83 vmDq6MjZ.net
ActiveSheet.Buttons(Application.Caller).Characters.Text でいけないかな
試してないから駄目だったらごめん
53:デフォルトの名無しさん
19/03/20 00:47:38.18 vmDq6MjZ.net
>>49
インデックス番号は、同じ種類のシート間に付けられる番号で、左からのシート見出しの順に基づきます。
URLリンク(docs.microsoft.com)
シートオブジェクトの移動や削除を行ったときにダイナミックにインデックスが変更されるのか、ファイル保存等の更新イベントがあるのかという細かい部分は調べてないから分からない
デフォルトのシート名がSheet & シート追加時のインデックス値になるのは経験上知ってる
54:デフォルトの名無しさん
19/03/20 00:58:10.12 +iQ33M/7.net
>>49
画像のボタンがSheet1に貼ってあったからそれに合わせて書いただけ
"Sheet1"っていう名前のシートのオブジェクト名がSheet1になってるっしょ
55:デフォルトの名無しさん
19/03/20 01:11:06.91 +iQ33M/7.net
>>51
シートのインデックスは常に左からの連番
シートの追加削除等あればもちろん都度変わる
56:デフォルトの名無しさん
19/03/20 01:39:18.38 6ln9W50J.net
>>50
行けそうでダメでした
何で~?
URLリンク(i.imgur.com)
URLリンク(dotup.org)
>>51
>デフォルトのシート名がSheet & シート追加時のインデックス値
削除すると変わるので、これは違います
>>52
その仕様ってどこかに書いてないのでしょうか
57:デフォルトの名無しさん
19/03/20 02:22:30.37 +iQ33M/7.net
>>54
どこに書いてるかは知らないけど、ボタンもシートもブックもオブジェクトの指定の仕方は同じ
オブジェクト名
オブジェクトのコレクション(インデックス)
オブジェクトのコレクション("名前")
好きなのを使うがよい
58:デフォルトの名無しさん
19/03/20 02:25:30.67 +iQ33M/7.net
MS公式でWorksheetオブジェクトに関する説明調べればどっかにあるかもねえ、知らんけど
59:デフォルトの名無しさん
19/03/20 11:46:18.93 KyvcPrHu.net
マクロを10時間ぶっ通しで走らせるのはよくないですか?途中で再起したほうがいいですか?
60:デフォルトの名無しさん
19/03/20 11:59:24.66 xEZ65DiY.net
>>57
また馬鹿が来た
死ねよ
61:デフォルトの名無しさん
19/03/20 12:06:20.76 6ln9W50J.net
>>55>>56
ありがとうございました
もう少し調べたかったけど、疲れたので断念します
>>57
とりあえず動かして、エラーが起きなければ何も問題はない
ただ、セルを触る物を10時間も動かすとメモリエラーが起こるかも知れない
>>58
笑った
62:デフォルトの名無しさん
19/03/20 12:33:29.40 KyvcPrHu.net
>>59
ありがとうございます。
メモリの心配はありますが、ぶっ通しでやってみます。
63:デフォルトの名無しさん
19/03/20 13:54:52.74 2xsXzlGP.net
>>57
応答なしにならないか?
64:デフォルトの名無しさん
19/03/20 15:56:43.40 1jasQYq3.net
だから、どういう状況で10時間ぶっとおしが必要なんだよwwwwww
マジでExcelを何に使ってるのか気になるわ。
65:デフォルトの名無しさん
19/03/20 16:27:03.42 xEZ65DiY.net
馬鹿の考えることをまともに相手をしてはいけない
66:デフォルトの名無しさん
19/03/20 20:36:03.66 nDF65YVh.net
結果セットは小さいけど重いDBクエリを繰り返すとかだったらわかる
67:デフォルトの名無しさん
19/03/20 20:53:54.94 EpI850Tv.net
10時間動かし続けるとなると思いつくのは
出勤時間中にwebサイトやフォルダ監視し続けて何かをキッカケに何かするみたいなのかな
68:デフォルトの名無しさん
19/03/20 22:28:30.85 ad3N4bFR.net
エクセルでやることなんですかねそれ...
69:デフォルトの名無しさん
19/03/20 22:53:02.96 1jasQYq3.net
ExcelVBAでパワーポイント動かしたいんですけど、
とか言われても、もう驚かんわ。
70:デフォルトの名無しさん
19/03/20 23:11:09.25 7O8FfDv3.net
馬鹿はそこでマクロと言い出す
更には、「教えて」「助けて」で始まり
「急いでます」「作って」と要求する
71:デフォルトの名無しさん
19/03/20 23:20:32.29 dyVQ1wUM.net
>>67
やろうと思えば出来んでもないのか
72:デフォルトの名無しさん
19/03/20 23:21:49.19 dyVQ1wUM.net
なんだお前ら、勿体無いな
10時間動かすなんて奇抜な事をしてくれるんだから、全力で応援するべきだろう
かなり貴重なサンプルが手に入る可能性があるのに、バカだの言って切り捨てるのはあまりに勿体無い
73:デフォルトの名無しさん
19/03/20 23:38:22.03 9h7AJaIR.net
>>70
まともな報告がある可能性は殆どない。
報告が役に立つ可能性はもっとない
74:デフォルトの名無しさん
19/03/20 23:45:57.48 dyVQ1wUM.net
>>71
この辺は感性の違いかな
面白い物が見れそうな時はどんどん投資してしまう
75:デフォルトの名無しさん
19/03/21 02:02:16.06 +l8n8fiW.net
肛門に穴があいたんですけど、
とか言われても、もう驚かんわ。
76:デフォルトの名無しさん
19/03/21 06:33:27.17 LeqqYBVH.net
>>73
痔瘻でつか?
77:デフォルトの名無しさん
19/03/21 07:23:06.55 u3u8nbsq.net
>>69
むしろ楽勝の方だろ
ちょっと前にシートの内容をスライドに埋め込むとかはやったことがある
やったのはPowerShellだったけどCOM経由なら似たようなもんだし
78:デフォルトの名無しさん
19/03/21 10:02:44.62 TiVPJMex.net
パワーポイントでVBAって何すんの?
パワーポイントって発表用のアプリだろ。 それでVBAって需要なんてあまりあるとは思えんが
79:デフォルトの名無しさん
19/03/21 10:04:16.17 XMapNPTs.net
シートの内容をスライドに埋め込むとか
80:デフォルトの名無しさん
19/03/21 10:26:55.37 VaVZDR1N.net
プレゼンが定例業務としてある会社もあるんじゃね
81:デフォルトの名無しさん
19/03/21 10:29:58.00 epreAi+X.net
例えば、気象庁のホームページからクエーリーでデータを取得し
パワポにデーター貼り付けながら、加工してそれをアニメーションで
かっこよく表示していくとか、考えれば応用はいくらでもあるだろう
82:デフォルトの名無しさん
19/03/21 10:37:01.43 epreAi+X.net
言葉が足りなかった、プレゼン用ではなく、情報表示モニター用にな
いくらでも機能はつけられる
83:デフォルトの名無しさん
19/03/21 11:18:23.86 TiVPJMex.net
なんかどれも一般個人には無縁のものばかりだな
84:デフォルトの名無しさん
19/03/21 11:20:14.60 TiVPJMex.net
まあパワーポイント自身、個人で使うことなんてないのか
でも企業でも極一部の部署しか使わないものばかりじゃん
85:デフォルトの名無しさん
19/03/21 11:39:33.97 cL16VMj6.net
パワポVBAで何か作ってみたいという逆需要で、発表後喋ってる間にスターウォーズのエンドロールみたいなのを流すのを昔作ったことあるなw
それ以降、私の開発現場では(個人的にも)パワポVBAは全く需要なし
WordVBAも、補助ツールとして数年に一回作るくらいかな
86:デフォルトの名無しさん
19/03/21 11:42:12.40 XMapNPTs.net
スライドシェアとか見てもかったるいだけだからな
大昔の改行しまくりのテキストサイト思い出す
87:デフォルトの名無しさん
19/03/21 11:45:36.88 epreAi+X.net
なんか、ExcelのVBAでパワポを操作するのと、パワポのVBAを同一で語ってるやついるか?
ちなみにWordのVBAはいくつか作って今も使ってるけど、まあ対比で言えばExcelの
100分の1程度だな
88:デフォルトの名無しさん
19/03/21 12:40:04.02 epreAi+X.net
>>84
>スライドシェア
何だよ、かったるいのしか見たことないんだろ
>テキストサイト
何もわからんバカなのね(笑)
89:デフォルトの名無しさん
19/03/21 12:46:45.76 epreAi+X.net
>>84
まあ、言葉もわからんカスが書き込みするスレだよな
90:デフォルトの名無しさん
19/03/21 12:51:57.24 VaVZDR1N.net
>>86
カッコイイパワポを見てみたいんだが、どこかにある?
俺は見たことない
91:デフォルトの名無しさん
19/03/21 12:55:25.94 epreAi+X.net
>>88
そうか、じゃあそのままでいいよ
検索もできないカスのお前に見せる必要ないからな
92:デフォルトの名無しさん
19/03/21 13:01:18.94 epreAi+X.net
自分では何もできないくせに、人の作ったものは全力で否定するカスいるな
生きてる必要あるんか?・・ってかどうなの?(笑)
93:デフォルトの名無しさん
19/03/21 16:10:00.98 rariafKZ.net
>>83
単に、バカじゃん(大笑)
94:デフォルトの名無しさん
19/03/21 18:21:43.40 AEHjc1Fb.net
>>82
accessよりは使ってる
95:デフォルトの名無しさん
19/03/21 18:38:57.53 jb0c41ul.net
>>75
そういう問題か?
PowerPointなのにPowerPointVBAを使わずにExcelVBAという所が驚きの対象なんじゃないの?
96:デフォルトの名無しさん
19/03/21 18:40:52.37 UMX0gRc1.net
起点がExcelってのがポイントだよな
97:デフォルトの名無しさん
19/03/21 18:59:32.81 susRoq6I.net
>>67の冗談が起点なのになんで真剣に語っているんだ
98:デフォルトの名無しさん
19/03/21 19:40:57.90 u3u8nbsq.net
>>93
Excel VBAで扱うのとPowerPoint VBAで扱うのはたいして変わらんよ
どっちから制御するかだけの問題
99:デフォルトの名無しさん
19/03/21 21:02:50.21 UMX0gRc1.net
他アプリから制御するのはいちいちアプリケーションインスタンスを起動しなきゃならんのが糞面倒
パワポだけで済むならパワポにする
100:デフォルトの名無しさん
19/03/21 21:15:08.25 HmxAO54P.net
VBAを使ってる人って御老人のイメージだけど合ってる?
101:デフォルトの名無しさん
19/03/21 21:48:16.24 7ESjhGWi.net
ナウでヤングな人は何使うん
102:デフォルトの名無しさん
19/03/21 22:10:39.42 susRoq6I.net
そろばん
103:デフォルトの名無しさん
19/03/22 08:13:43.08 s6oj+Xdm.net
>>96
PowerShellなんて言い出す奴だからわからないんだろうな。
大して変わらんのなんて当たり前だろ。
PowerPointVBAからExcel.Application使って、そのExcelオブジェクトからPowerPoint.Application使ってを10回繰り返した所で変わらんけどアホ丸出しなのが分からんのかね。
104:デフォルトの名無しさん
19/03/22 08:17:26.70 wT5mo1++.net
>>101
で?
例がアホすぎて何を主張したいのかさっぱりわからんw
105:デフォルトの名無しさん
19/03/22 09:00:55.13 7FUJ+LGH.net
パワーポイントVBAって色々と勝手が違って面倒臭かった記憶があるけどな
そもそもエクセルやワードと違って空のアプリケーションインスタンス作れないんじゃなかったっけか
ファイル実行時に読み取りパスワードを指定するときもファイル名と連結する必要があるし
106:デフォルトの名無しさん
19/03/22 09:13:17.49 s6oj+Xdm.net
>>102
バカにはわからない。
というか例がアホ過ぎる所がミソなんだがw
そんなアホなことをするのかというのが驚きの対象であって、大して変わらんかどうかなんて頓珍漢な話はどうでもいい。
107:デフォルトの名無しさん
19/03/22 09:35:36.14 wT5mo1++.net
いや、当たり前なんてみんな知ってる(>>93を除くw)のに今更何を言いたいんだってこと
バカの上塗り?
108:デフォルトの名無しさん
19/03/22 10:34:34.64 1snpMqV+.net
結局、ワッチョイ抜きにするから荒れるんだろ
誰がどう主張したいのかわからなくなる
ワッチョイが嫌な奴がこのスレ建てたんだろうな、立て直すか?
109:デフォルトの名無しさん
19/03/22 10:58:31.28 f/f2Qmpp.net
>>101
それ面白いw
110:デフォルトの名無しさん
19/03/22 12:26:36.58 s6oj+Xdm.net
>>105
プッ
当たり前なのは>>93を含めてみんな知っている。
今更何を言いたいのかは>>102を除いてみんな知っているw
111:デフォルトの名無しさん
19/03/22 12:41:30.27 VWKP5DOZ.net
で、結局>>101は当たり前の事をほざいてただけ?
やっぱりバカの上塗りじゃねーか w
112:デフォルトの名無しさん
19/03/22 13:05:17.10 xmRgZnoh.net
OLEアプリケーション連携の話になると途端に荒れるのやべーな
前も下らんAccessの話でクッソ揉めてたし
他アプリ連携のスキルをプライドの拠り所にしてる人が結構いるのかな
凄いことやってる風に見てもらえるときあるし分からんでもないけどさ
113:デフォルトの名無しさん
19/03/22 13:46:53.89 CAtaruvO.net
こっちに移動しる
スレリンク(tech板)
114:デフォルトの名無しさん
19/03/22 14:07:54.62 DJ7JSKt5.net
こっちに移動しろ
スレリンク(tech板)
日本語は正確に
115:デフォルトの名無しさん
19/03/22 14:18:45.03 CAtaruvO.net
こいつ、知ってて言ってるのか知らないのか
116:デフォルトの名無しさん
19/03/22 17:56:53.75 DJ7JSKt5.net
会社でブラウザの検索結果のページで
いっぱいURLのリンク先が表示されるのですが
そのたくさんのURLのそれぞれを開いたページ(毎回違うけど50ページくらいある)のデータを取得するVBAのコードを考えています。
IEの定番のCreateObject("InternetExplorer.Application")とDOMツリーの方法で実現できてはいるのですが
1つ1つページを開いて取得して閉じる、という作業がネットワークの遅さで異常に時間がかかります。
この複数のページを同時で取得する方法ってないでしょうか?よく知らないけどJavaでいうスレッドみたいな?
117:デフォルトの名無しさん
19/03/22 18:05:28.43 wNvbYX88.net
いまどきマルチポストに眉をしかめるような時代遅れの人間なんていないよ、ね?
118:デフォルトの名無しさん
19/03/22 18:13:30.85 f/f2Qmpp.net
>>114
IEオブジェクト作らずに通信すると早くなる気がするけど早くならないかもしれない
試してみて
Sub foo()
Set httpReq = CreateObject("MSXML2.XMLHTTP")
httpReq.Open "GET", "URLリンク(www.nicovideo.jp)
httpReq.Send
Do While httpReq.readyState < 4
DoEvents
Loop
str2 = httpReq.responseText
End Sub
119:デフォルトの名無しさん
19/03/22 18:19:28.87 wCnCSK0y.net
>>114
どっかのサーバーでPHPなどで書けば
120: 一度に取得を投げて戻ったイベントで処理を書く ネットワークに依存しないし負荷はサーバー 詳しくはPHPなどの質問スレッドでしろ
121:デフォルトの名無しさん
19/03/22 18:37:45.64 wCnCSK0y.net
>>116
VBAでは書いたことないけど
リクエストを配列にして一度に投げ
戻った奴から処理する
普通はイベントで受ける
122:デフォルトの名無しさん
19/03/22 19:06:06.24 DJ7JSKt5.net
>>116
そのCreateObject("MSXML2.XMLHTTP")はなんでしょうか?
str2にはたしかに入ってますが"URLリンク(www.yahoo.co.jp)にしたら空欄になってしまいます。
HTMLページは膨大なソースなのでDOMツリーで必要なものだけを取り出したいのですが、それはできますか?
>>117
PHPって知らないのですが簡単に学習できるのですか?
>>118
VBAでイベントってどうやって受けるのですか
123:デフォルトの名無しさん
19/03/22 19:30:29.78 s6oj+Xdm.net
>>109
まだ分かんねーのかよw
124:デフォルトの名無しさん
19/03/22 19:31:45.60 f/f2Qmpp.net
>>120
すまん無能、ちょっと静かにしてくれ
125:デフォルトの名無しさん
19/03/22 19:35:09.00 wCnCSK0y.net
>>119
PHPをおけるサーバーの契約まあ無料のところも有るだろ
学習は無料でツールをダウンロード出来る
比較的簡単な言語でいろいろソースもあるが
VBAは超簡単な方だからな
VBAは特定のイベントしか受けられんのかな
普通VBやc++やPHP などでコーディングするときは
イベントで受ける
126:デフォルトの名無しさん
19/03/22 19:35:18.99 wT5mo1++.net
アホの考えなんてわからんしわかりたくもないわw
127:デフォルトの名無しさん
19/03/22 19:37:24.46 s6oj+Xdm.net
>>119
出来る。
ResponseTextをDOMに入れる。
128:デフォルトの名無しさん
19/03/22 19:37:49.10 f/f2Qmpp.net
>>118
jsで言うPromise?
非同期がvbaにあるんか、と思って調べたら一応あったけどかなりしんどいな
URLリンク(system-engineerlife.com)
>>119
>CreateObject("MSXML2.XMLHTTP")
http通信するだけのもの。DOM構築しないから軽いはず
129:デフォルトの名無しさん
19/03/22 19:46:10.91 s6oj+Xdm.net
>>125
これ、マルチプロセスだけどな。
別にしんどくない。
ExcelVBAでマルチプロセスやるときはExcel.Applicationを複数作ってやるのが普通だと思うけどね。
最終的に速度どうにもならないときはマルチプロセスにする。
130:デフォルトの名無しさん
19/03/22 19:51:03.17 s6oj+Xdm.net
>>123
10時間ぶっ通しのVBAのようにアホ丸出しの例としてExcelVBAからPowerPoint動かすって話だろ。
>>75のような当たり前の話じゃないんじゃないの?
という問い掛けが>>93だろ。
131:デフォルトの名無しさん
19/03/22 19:58:09.82 s6oj+Xdm.net
>>125
ちなみにマルチスレッドはこっちにあるやり方
URLリンク(needtec.exblog.jp)
場合によっては使える(自分で表示したメッセージボックスのボタンをクリックとか)と言いたいところだが止めとくべきだね。
132:デフォルトの名無しさん
19/03/22 20:11:29.06 f/f2Qmpp.net
>>119
Sub foo()
Set httpReq = CreateObject("MSXML2.XMLHTTP")
httpReq.Open "GET", "URLリンク(www.yahoo.co.jp) False
httpReq.Send
Do While httpReq.readyState < 4
DoEvents
Loop
Set HTML = CreateObject("htmlfile")
HTML.write httpReq.responsetext
End Sub
これでHTMLがdomになる
ちなみにphpなら二行で終わる
サーバー借りなくてもxamppっての使えばPCだけで行けるけど、
どっちにしても学習コスト高い気がする
ついでにHP作ってみると良いかも知れない
>>126>>128
excelかVBSインスタンスをスレッドの分作って文字列作ってevalみたいにして実行か
もうここまで来るとVBAでやるのはなぁ
VBAしかないなら頑張れるけど、他言語だと瞬殺と思うとやる気が削がれる
133:デフォルトの名無しさん
19/03/22 20:17:17.71 PU7qmvYu.net
>>127
> 10時間ぶっ通しのVBAのようにアホ丸出しの例としてExcelVBAからPowerPoint動かすって話だろ。
その例がアホって話だろw
134:デフォルトの名無しさん
19/03/22 20:59:52.84 EWPhTEeI.net
>>116
httpReqを配列にしてreadyStateが4より小さいものから処理すれば良いだけだろ
135:デフォルトの名無しさん
19/03/22 22:37:39.98 kGxcTvNs.net
もうExcelの変な使い方スレでいいよ、ここ。
136:デフォルトの名無しさん
19/03/22 22:41:13.31 DJ7JSKt5.net
レスありがとうございます。
>>122
なるほどそうですかありがとうございます。
いまの直近の問題が解決したらあとで勉強してみます。
>>124-125, >>129
DOMができたとして
50個くらいある複数のURLの1つ1つに
Do While httpReq.readyState < 4
DoEvents
Loop
で時間待ちするのが問題なんです。
1つあたり1分近くかかるから。
一気に全部同時にやれないかなと。
137:デフォルトの名無しさん
19/03/22 22:51:56.07 tgov+uRX.net
PowerShellでやった方が絶対に速い
138:デフォルトの名無しさん
19/03/22 22:54:22.06 CAtaruvO.net
>>134
PowerShellのプログラミングってめっちゃめんどくさい
タイプ量が半端なく多くなる。 大嫌い
139:デフォルトの名無しさん
19/03/22 23:08:19.23 E2ofkEmJ.net
まとめてダウンロードしてファイルに保存
その後一つずつ解析するべき
domなんて使わなくても正規表現で何とかするべき
140:デフォルトの名無しさん
19/03/22 23:19:11.20 tgov+uRX.net
でもpowershellなら.NETのWorkflowが手軽に使えるよね
141:デフォルトの名無しさん
19/03/22 23:23:39.28 tgov+uRX.net
Runspaceも使えるし
142:デフォルトの名無しさん
19/03/22 23:36:27.88 f/f2Qmpp.net
>>133
すまん、無理だった
他の人頼む
arrayでurl設定して、class使ってforeachだろうけど
vbaのclassを覚える気力がもう内
とりあえず2つだとこんな感じ
Sub foo()
Set httpReq = CreateObject("MSXML2.XMLHTTP")
httpReq.Open "GET", "URLリンク(www.yahoo.co.jp) False
httpReq.Send
Set httpReq2 = CreateObject("MSXML2.XMLHTTP")
httpReq2.Open "GET", "URLリンク(urasunday.com) False
httpReq2.Send
Do
flg = False
If httpReq.readyState < 4 Then flg = True
If httpReq2.readyState < 4 Then flg = True
DoEvents
Loop While flg
Set HTML = CreateObject("htmlfile")
HTML.write httpReq.responsetext
Set HTML2 = CreateObject("htmlfile")
HTML2.write httpReq.responsetext
End Sub
143:デフォルトの名無しさん
19/03/23 00:08:10.78 GJYnZjvR.net
If httpReq.readyState < 4 Then flg = True
If httpReq2.readyState < 4 Then flg = True
片方で抜ける
配列ぐらい使えよ
144:デフォルトの名無しさん
19/03/23 00:23:31.53 GJYnZjvR.net
読み込めた物から処理するんだよ
145:デフォルトの名無しさん
19/03/23 00:41:36.68 sBAP9hOD.net
>>140
・普通に逆だった、スマン
・pushくれ。redimしなくていい素直なpush
・なんかテキトーにやってもうまいことやってくれる非同期欲しい
・eachで自動生成されるindexくれ
・インクリメントくれ
ってことでうんこコードになったわ、すまん
>>141
それは分かるし書きたいんだけど
documrnt.ready(function(){}~
的な奴が分からなかった
146:デフォルトの名無しさん
19/03/23 00:42:04.83 sBAP9hOD.net
>>133
Sub foo()
Const max_count = 1000 '1000で決め打ち
url_arr = Array( _
"URLリンク(www.yahoo.co.jp) _
"URLリンク(urasunday.com) _
)
Dim httpReq(max_count)
index_httpReq = 0
For Each url_foo In url_arr
Set httpReq(index_httpReq) = CreateObject("MSXML2.XMLHTTP")
httpReq(index_httpReq).Open "GET", url_foo, False
httpReq(index_httpReq).Send
index_httpReq = index_httpReq + 1
Next
147:デフォルトの名無しさん
19/03/23 00:42:09.03 sBAP9hOD.net
Do
flg = False
For Each url_foo In url_arr ' どれかがまだ
If httpReq(index_foo).readyState < 4 Then flg = True
Next
DoEvents
Loop While flg
Dim html(max_count)
index_html = 0
For Each url_foo In url_arr
Set html(index_html) = CreateObject("htmlfile")
html(index_html).write httpReq(index_html).responsetext
Cells(index_html + 1, 1).Value = httpReq(index_html).responsetext 'テスト。A列に出力する
index_html = index_html + 1
Next
End Sub
148:デフォルトの名無しさん
19/03/23 00:45:06.99 sBAP9hOD.net
>>143までは問題ないと思う
>>144でグダグダになった。
パフォーマンス的にはそんなに変わらんだろう。大量にあるとメモリにも影響してきそうだけど
149:デフォルトの名無しさん
19/03/23 01:11:21.36 GJYnZjvR.net
If httpReq(index_foo).readyState < 4 Then flg = True
コレじゃ1つでも読み込めたらループから抜ける
set したのはリリースする
処理がおもいのは
html(index_html).write httpReq(index_html).responsetext
これだろ
150:デフォルトの名無しさん
19/03/23 01:15:54.12 GJYnZjvR.net
同じ個数配列で使うものはTypeを使って構造体にしろよ
構造体を配列で取る
redimぐらい使えよ
151:デフォルトの名無しさん
19/03/23 01:39:28.59 sBAP9hOD.net
>>144
Do
flg = False
For Each url_foo In url_arr ' どれかがまだ
If httpReq(index_foo).readyState < 4 Then flg = True
Next
DoEvents
Loop While flg
↓
For Each url_foo In url_arr ' どれかがまだ
Do
flg = False
If httpReq(index_foo).readyState < 4 Then flg = True
DoEvents
Loop While flg
Next
>>146
>コレじゃ1つでも読み込めたらループから抜ける
入れ子逆だった、スマン
>set したのはリリースする
httpReq is nothingがエラーになる
vbaって配列 is nothing出来ないのか
>処理がおもいのは
相対的に重いけど体感上重くは無いと思う
>>147
vbaのclassは正直もう無理や
152:デフォルトの名無しさん
19/03/23 02:18:04.14 GJYnZjvR.net
構造体を使うのは処理を分かりやすくするため
リリースは
Set オブジェクト変数 = Nothing
感覚的に難しいかな
153:デフォルトの名無しさん
19/03/23 04:53:32.37 4V4ijAbJ.net
>>142
普通は以下のように、自分で状態を調べたりしない。
If httpReq.readyState < 4 Then flg = True
これは、Node.js などの低レベルな書き方で、普通はこれらの状態をラップして、
簡潔に書ける方法が、ライブラリ・フレームワークに用意されている
例えば以下は、JavaScript, jQuery の非同期処理の書き方。
ready になったら、引数で定義した、callback 関数を呼んでもらう。
document.ready(function(){}~
非同期処理には、promise, deffered, async/await の書き方もある
Ruby で、Selenium WebDriver なら、非同期処理を考えなくても、普通に同期的に書ける。
非同期処理の書き方のすべてが、ラップされているから。
Timeout 設定時間までに、状態が満たさなければ、Timeout Error になるだけ
154:150
19/03/23 05:31:12.29 4V4ijAbJ.net
漏れなら、Ruby で、Selenium WebDriver で、
url.txt には、行区切りでURL を書いておく。
script.rb には、Selenium WebDriver での処理を書いておく
main.rb には、以下を書いておいて、このファイルを、ruby main.rb で実行する
File.foreach( "url.txt" ) do |line|
`ruby script.rb #{ line }`
end
url.txtを、1行ずつ処理して、各URLを取得して、それを引数にして、
ruby script.rb URL の別プロセスを呼び出す。
ただし、Selenium WebDriverでの処理が、URLだけが異なって、他は同じ事が条件
つまり、マルチプロセス
これをマルチスレッドにすると、排他処理などが面倒。
それに同一プロセス内の処理になるので、1つのエラーで、すべての処理が止まるし、やってられない!
155:デフォルトの名無しさん
19/03/23 05:42:27.10 GJYnZjvR.net
VBA以外の構造化言語で書けば綺麗に書ける
まあ出来るだけ近いように書くのがよいが
まあ所詮俺もこんな処理ではJavaかPHPでしか書かない
まあ
156:デフォルトの名無しさん
19/03/23 07:22:22.14 4ZM/hDcb.net
>>148
> vbaのclassは正直もう無理や
TypeとClassは関係ないぞ
Typeは単に複数の値を纏めるだけ
157:デフォルトの名無しさん
19/03/23 08:17:41.71 Rd0MSm4a.net
たぶん、構造体 = Type = 型 = クラス っていうアナロジーで考えてたんだろうね
158:デフォルトの名無しさん
19/03/23 09:27:10.21 GJYnZjvR.net
まあ、コードも間違ってるし書き方も良くない
配列すら得意でないようなので・・・
あと、せっかくExcelを使ってるんだから
Url等の情報はセルから読み込むよな
159:デフォルトの名無しさん
19/03/23 11:00:19.04 tmlWK/3A.net
>>151
seleniumってまだ使えんの?もう機能しなくなったと思ってた
160:デフォルトの名無しさん
19/03/23 11:18:14.30 sBAP9hOD.net
あぁvbaってclassと構造体両方あったのか
>>155
コールバックの部分だけはマジで分からんかった
どうやって書くんだ
>>150
クソ言語乙
161:fusianasan
19/03/23 11:19:15.45 j1qksDnK.net
Debug.Print("test")
162:デフォルトの名無しさん
19/03/23 11:39:13.69 uLwnX5A6.net
>>130
だから、お前が真面目に出来るとか言ってるのは、真面目な話じゃ無くてアホな話だろと言ってるんだが。
アホな例を出さなかったらそれこそアホだろw
163:デフォルトの名無しさん
19/03/23 11:47:22.03 4ZM/hDcb.net
>>159
はあ?
>>67が
> やろうと思えば出来んでもないのか
って書いてるからやること自体は難しくないって書いてるだけだぞ
そもそもExcel VBAでPowerPointを操作するのがアホとか言ってるわけじゃないことも理解できてないのかよw
164:デフォルトの名無しさん
19/03/23 11:52:28.25 /daUWZWt.net
>>157
Excelでコールバックで受けたいって言っても、やったことないな
所詮そんなにクリティカルなルーチンを書く環境じゃないだろ
そんなことしなくても、ステータスが読み込めた物から処理して
全ての配列が処理出来たら終わればいいぐらいのコーディングだな
自分で書かなきゃ意味ないぞ
165:デフォルトの名無しさん
19/03/23 12:03:01.48 jhd39dfA.net
>>160
無能の相手はほどほどで
>>161
やっぱり難しいよな
>全ての配列が処理出来たら終わればいいぐらいのコーディングだな
これで書いたよ
DOM部分はどうせ瞬殺だからまとめて良い
166:デフォルトの名無しさん
19/03/23 12:12:55.71 /daUWZWt.net
>>162
他の言語で簡単にかけるって言っても
所詮その言語で提供されたルーチンを使うだけだから
適した言語で書けば比較的簡単にかけることは確か
コーディングに関しては直感で書いたからもう少し読んでみよう
167:デフォルトの名無しさん
19/03/23 12:16:35.94 /daUWZWt.net
まあ、所詮夜勤から帰って書き込みしてるから
午後は、お酒が進むんでまあ気にするな
168:デフォルトの名無しさん
19/03/23 12:44:05.74 4ZM/hDcb.net
>>157
> コールバックの部分だけはマジで分からんかった
> どうやって書くんだ
コールバックなんていらんだろ
素直にreadyStateが4になったら処理すればいいだけ
スマホから打ってるからデバッグしてないけどこんな感じ
Type Request
Session As Object
Done As Boolean
End Type
url_arr = Array("URLリンク(www.yahoo.co.jp) "URLリンク(urasunday.com))
Dim Requests()
ReDim Requests(LBound(url_arr) To UBound(url_arr))
Dim Index As Integer
For Index = LBound(url_arr) To UBound(url_arr)
With Requests(Index)
Set .Session = CreateObject("MSXML2.XMLHTTP")
.Session.Open "GET", url_arr(Index), False
.Session.Send
.Done = False
End With
Next
' 続く…
169:デフォルトの名無しさん
19/03/23 12:44:29.37 4ZM/hDcb.net
' 続き
Dim AllDone As Boolean
Do
AllDone = True
For Index = LBound(url_arr) To UBound(url_arr)
With Requests(Index)
If Not .Done Then
If .Session.readyState < 4 Then
AllDone = False
Else
Cells(Index + 1, 1).Value = .responseText
.Done = True
End If
End If
End With
Next
DoEvents
Until AllDone
170:デフォルトの名無しさん
19/03/23 14:51:45.33 uLwnX5A6.net
>>160
いや、だから...
それに>>67じゃなくて>>69だろ。
やろうと思えば出来るけど、驚いてるのはそこじゃ無いだろという指摘が理解できなかったから>>96みたいな頓珍漢なことを言ったんだろ。
じゃなかったら>>96みたいに噛み合わない発言にならない。
171:デフォルトの名無しさん
19/03/23 14:57:22.48 jhd39dfA.net
>>165
俺も使わなくてもいいと思うが
上でコールバックコールバック言ってたからな
>>167
お前に何の能力もないのは分かったから落ち着け
172:デフォルトの名無しさん
19/03/23 15:09:34.24 4ZM/hDcb.net
>>167
お前はアンカーもまともに見れないのかよw
173:デフォルトの名無しさん
19/03/23 19:02:03.41 4V4ijAbJ.net
157デフォルトの名無しさん2019/03/23(土) 11:18:14.30ID:sBAP9hOD
>>150
クソ言語乙
142デフォルトの名無しさん2019/03/23(土) 00:41:36.68ID:sBAP9hOD
こいつは荒らしじゃね?
相手しない方がよい
174:デフォルトの名無しさん
19/03/23 19:19:07.38 tumCHHdc.net
>>170
ここはVBAのスレだよ。 そこにRubyとか持ってきたからじゃねえのw
175:デフォルトの名無しさん
19/03/23 20:10:53.10 VsaUG60l.net
>>170
そのruby信者が荒らしだぞ
あらゆるスレで「rubyなら~」と言ってrubyを貶めしている
pythonスレではスレタイにruby禁止とまで入る始末
176:デフォルトの名無しさん
19/03/23 22:49:02.19 XxYiFSG+.net
コールバックって何?
ググると、関数の引数に渡す関数って出てくるけど、
それって、複数の処理を、
↓こうやって横着して1行に書くのと何が違うのかわからん。
a = Replace(Replace("あいうえお", "あい", ""), "えお", "")
177:デフォルトの名無しさん
19/03/23 22:57:17.29 VsaUG60l.net
>>173
a関数の処理が終わった場合、a関数の引数を受け取ってb関数を自動的に開始する・・・という処理
非同期、特にスクレイピングが多重で続くような場合は非常に強力
URLリンク(www.sejuku.net)
使う場面が分からないのは、使う必要が無いと思って良い
jsだと死ぬほど使うが、EXCELで使う事はまずない
178:デフォルトの名無しさん
19/03/23 23:43:32.78 vBZJiXyX.net
VBAでコールバックを実装しようとしたら、 Application.Runを使うかクラスモジュールでメソッド書いてCallByName関数で呼び出すようにするかって感じになるんかね
179:デフォルトの名無しさん
19/03/23 23:54:56.46 49H4PHbP.net
>>175
AddressOf
180:デフォルトの名無しさん
19/03/23 23:57:25.89 49H4PHbP.net
>>175
ごめんVBAでコールバックを「実装」か。
VBAの関数をコールバックするにはどうするかという問題と勘違いした
181:デフォルトの名無しさん
19/03/24 00:19:26.62 lQI3nZvh.net
>>177
そう、外部プログラムにVBA側の関数ポインタを渡す話じゃなくて、受けとる側の処理の書き方
182:デフォルトの名無しさん
19/03/24 00:40:55.67 MjUvfGmD.net
クラスのメソッドとしてコールバック関数を実装してinterfaceか遅延バインディング使えばいい
183:デフォルトの名無しさん
19/03/24 07:46:43.58 myNgr9GS.net
>>173
> a = Replace(Replace("あいうえお", "あい", ""), "えお", "")
これは外側のReplace()に内側のReplace()の「結果」を渡してる
コールバック関数は内部で呼ぶ関数を変えたい時に使う
例えば図形を描くルーチンがあったとして出力先を色々切り替えたいとかだと出力する関数を自体を渡す
やり方はこの辺りを参考にして
URLリンク(qiita.com)
184:デフォルトの名無しさん
19/03/24 11:58:57.43 DVu1xjKe.net
>>179
やっぱりAddressOfの値を受け取ってそれをAPI経由で実行するのがいいんじゃないか
ただしシグネチャは一定とする
185:デフォルトの名無しさん
19/03/24 12:25:58.30 3NyLxN/m.net
URLリンク(i.imgur.com)
エクセルあればワードもパワポもアクセスもいらない
186:デフォルトの名無しさん
19/03/24 12:32:32.58 4ve/ST91.net
そんな事をエクセルVBAでやる意味って何?
何が何でもVBAって馬鹿のひとつ覚えって言うんだよ
187:デフォルトの名無しさん
19/03/24 12:35:25.20 aL5blMH8.net
>>183
他言語を覚えなくて良いのは大きなメリット
環境構築、記述方法、言語仕様
この辺全部覚えなくて良いのはデカイ
特にvbaはプログラマーじゃなく事務員が使ってる場合も多いので、環境構築が苦手な事が多々ある
188:デフォルトの名無しさん
19/03/24 13:44:54.25 PQbtijKV.net
ノコギリで刺身切ろうとして包丁使えよって言われて包丁の使い方覚えなくていいのはメリットって言ってる構図
189:デフォルトの名無しさん
19/03/24 13:53:08.65 aL5blMH8.net
>>185
例え下手でわらった
190:デフォルトの名無しさん
19/03/24 13:54:25.82 PQbtijKV.net
>>186
お前は仕事下手だよな
191:デフォルトの名無しさん
19/03/24 14:07:22.16 OZ1kvGmt.net
他言語を覚えなくて良いって発想がどうかと思う
適材適所で効率良くするのも仕事だし
死にゆく言語の代表がVBA
192:デフォルトの名無しさん
19/03/24 14:08:05.28 myNgr9GS.net
>>185
流石に頓珍漢すぎ
出刃包丁で刺し身切ろうとしたら刺身包丁買ってこいって
193:ゴネてる奴がいるだけ
194:デフォルトの名無しさん
19/03/24 14:30:37.07 aL5blMH8.net
>>187
根拠もなく、何を見てそう思ったの?
>>188
>他言語を覚えなくて良いって発想がどうかと思う
>適材適所で効率良くするのも仕事だし
これは同意
俺も効率化のためにphpとjsはある程度覚えてるわ
ただ、人に勧めるのは現実的に厳しい面がある
たまーに出てくるスクレイピングのためにphp覚えろって言うのはなかなか酷
時間がかかって良いならウンコみたいなコードでも処理できるしな
ここの人でもサーバー=レンタルサーバーって発想した人いるけど、
スクレイピングのためにphp動かすならxamppで良い
>死にゆく言語の代表がVBA
ずっと言われてるけど全然死なないので俺も困っている。せめてバージョンアップして
195:デフォルトの名無しさん
19/03/24 14:34:03.77 dT6Xb8jy.net
既に公式にはJavaScriptに置き換わってるのに今更バージョンアップもクソも
196:デフォルトの名無しさん
19/03/24 14:35:01.83 aL5blMH8.net
>>191
JavaScriptに置き換わってるって言ってもアドインだけでしょ
197:デフォルトの名無しさん
19/03/24 14:43:19.68 dT6Xb8jy.net
>>192
だけもクソも、現在推奨されているExcelのプログラミングインターフェイスはアドインのみだよ
VBAは廃止予定のレガシーな機能であり、使用は推奨されない
198:デフォルトの名無しさん
19/03/24 14:53:50.44 aL5blMH8.net
>>193
それは知りませんでした、申し訳無い
そのソースってどこかにありますか?
vbaがやっと進化するのか
199:デフォルトの名無しさん
19/03/24 15:03:11.84 A9z4XFqj.net
自分の現在分かる範囲で創意工夫してやろうとするのは良いことで出来ちゃってるんだろうけどこの先ずっと出来るかは不明
新しいのを取り入れないとダメ
特にエクセルVBAでやる必要のないのがあるなら勉強のチャンスなのに古いのでやろうとするから進歩しない
200:デフォルトの名無しさん
19/03/24 15:10:13.55 gZMjxNOF.net
xampp入れてPHP一から覚えるぐらいなら、VB.NET覚える方がはるかにマシだわ
201:デフォルトの名無しさん
19/03/24 15:19:49.80 Mw3X0nZC.net
>>191
エクセルのマクロもVBAじゃなくてjavascriptになるのか?
てか、もうなってるの?
ボタンと押したときの動作とかもすでにjavascriptで書くようになってる?
202:デフォルトの名無しさん
19/03/24 15:23:45.60 aL5blMH8.net
>>197
アドインがjsで書けるように鳴ったんだよ
203:デフォルトの名無しさん
19/03/24 15:39:49.96 y9CSgW5G.net
ここは言語スレじゃなくてExcel VBAスレなんだが
バイクやチャリの板で日本縦断の準備とか注意点についての質問レスに対して飛行機使えよ馬鹿とレスしてるやつ居たらアホだろ
204:デフォルトの名無しさん
19/03/24 15:47:43.47 aL5blMH8.net
>>199
何回やっても例え下手やなw
もっとやっていいぞ
205:デフォルトの名無しさん
19/03/24 15:54:11.30 Mw3X0nZC.net
>>198
マクロは関係ないのね。 VBAが無くなるとは考えられん
206:デフォルトの名無しさん
19/03/24 16:01:00.66 dT6Xb8jy.net
>>201
マクロは単純に廃止だろうね
知らないかもしれないが、昔はVSなどMS製品には大抵VBAマクロが入ってたんだよ
どんどん廃止されて、今や残ってるのはOfficeだけ
207:デフォルトの名無しさん
19/03/24 16:08:12.38 Mw3X0nZC.net
>>202
ん? マクロ自身が廃止になるのか?
マクロは残るがVBAじゃなくてjavascriptになるのか、って聞いたんだが
208:デフォルトの名無しさん
19/03/24 16:19:40.92 aL5blMH8.net
>マクロ自身が廃止
上でそう言ってたけどソースが見つからない
ただの噂かも
>VBAじゃなくてjavascriptになるのか
現状はjsでもアドインを作れるようになっただけ
俺もvbaは廃止しないと思う
209:デフォルトの名無しさん
19/03/24 16:19:49.86 rXU7uH3v.net
だってVBAってセキュリティ的にヤバいし
エクセルファイルに偽装してマルウェア的なかなりの事までやれちゃうから廃止で良いよ
210:デフォルトの名無しさん
19/03/24 16:23:34.70 Mw3X0nZC.net
>>204
>俺もvbaは廃止しない
絶対あり得んよね。 今までの過去の資産がどれだけあるか
それを作ってるのは理系のプログラマじゃなくて文系の経理の女の子も相当いるからな
211:デフォルトの名無しさん
19/03/24 16:46:14.04 cASdygc2.net
全くバカばっかりだ。
その場で最適なのを選択すりゃ良いんだよ。
レガシーとか言ってるバカは救いようがない。
VBAで簡潔出来るならその方が良いんだよ。
VBScriptでファイル選択ダイアログを使う時にExcel.Application使うなんてのは本当はやりたくないけど他にうまい方法が無いから仕方ない。
このやりたくないというか筋が悪いと感じることが出来ない奴は結局駄目だね。
レガシーなのはその通りだが、それで別言語使って筋悪プログラミングしてたら意味が無い。
212:デフォルトの名無しさん
19/03/24 17:13:35.45 cASdygc2.net
“Office アドインはVBAやVSTOを置き換えるものではないので(現時点では)、「何でこんな簡単なこともできないの!?」とイライラしてはいけない”だとさ。
213:デフォルトの名無しさん
19/03/24 17:17:26.83 iA9UpJgV.net
Officeアドインとかいうの忌み子になりそうだよな
214:デフォルトの名無しさん
19/03/24 17:43:12.27 bibhGphx.net
とりまIEが消えればVBAでスクレイピングは消える
OS依存の負債を作りかねない機能はどんどん省いて欲しいね
215:デフォルトの名無しさん
19/03/24 17:58:19.82 XiACCcaf.net
セルの中に、そのセルが存在するシート名を抜き出す関数の定義ってどんなのがある?
シンプルで分かり易い、エクセルの版に依存しないのが良いな。
216:デフォルトの名無しさん
19/03/24 18:00:03.79 XiACCcaf.net
ここはVBAのスレだから、セル内で使う計算式の質問はスレ違か。
217:デフォルトの名無しさん
19/03/24 18:03:25.87 APHXkx0k.net
言ってみ
218:デフォルトの名無しさん
19/03/24 18:10:28.59 aL5blMH8.net
>>210
IEが無くてもhttp通信できるぞ
>>211
cell関数
URLリンク(kokodane.com)
シンプルじゃないけどこれぐらいしか
219:デフォルトの名無しさん
19/03/24 18:26:04.21 bibhGphx.net
>>214
http通信でスクレイピングか
是非頑張ってくれ
220:デフォルトの名無しさん
19/03/24 19:01:26.26 eoRp1F4j.net
>>214
ありです。
残念なことに、CELL関数は Excel Online の excel では動かないんですね。
221:デフォルトの名無しさん
19/03/24 20:51:56.44 IVIO7oct.net
というか、IE消えても出来るぞ。Winsockとか知らんか?
222:デフォルトの名無しさん
19/03/24 21:58:17.14 aL5blMH8.net
>>216
onlineか、無いっぽい
URLリンク(answers.microsoft.com)
SHEET()ってのもあるみたいでどうにかすれば行けそうな気もしたけどやっぱり無理だった
223:デフォルトの名無しさん
19/03/24 23:27:39.47 APHXkx0k.net
スクレイピングならJSで良いと思うけど何が何でもVBAなの?
何か幼少期に家庭的な問題でお父さんから虐待されてたとか?
224:デフォルトの名無しさん
19/03/24 23:39:48.89 3fqiTHWE.net
pythonスレのスレタイに、ruby禁止と入れて、スレ立てしている奴は荒らしだよ
lodash 禁止とか、jQuery 禁止とか、ライブラリの話は禁止とか書いて、
テンプレを勝手に改変して、スレ立てしている奴は荒らし
色々なスレを荒らしてる
相手をすると居つくから、相手をするな!
225:デフォルトの名無しさん
19/03/24 23:41:24.84 dT6Xb8jy.net
次スレはここもRuby禁止をスレタイに入れよう
226:デフォルトの名無しさん
19/03/24 23:46:49.32 3fqiTHWE.net
スクレイピングのために、xampp, PHP を学ぶのはキツイ。
Ruby, Nokogiri, Selenium WebDriver で良い。
JavaScript, jQuery も呼び出せるし
VBScript のスレ主のピッコロ大魔王のように、
VBScript, PowerShell で、.NET のライブラリを使って、5ch をスクレイピングする猛者もいるけど、これもキツイ
書きやすいのは、やっぱりRuby!
227:デフォルトの名無しさん
19/03/24 23:52:43.94 aL5blMH8.net
という荒らしがいるのでruby禁止をスレタイに入れるのは賛成だ
228:デフォルトの名無しさん
19/03/25 00:01:34.20 PcSty2cw.net
スクレイピングってその分野なら必須なのでVBAなんて低速非効率でするなんて馬鹿げてる
229:デフォルトの名無しさん
19/03/25 00:18:14.82 QHkTeEIZ.net
エクセル方眼紙で出来ることの限界に挑む
230:デフォルトの名無しさん
19/03/25 00:44:08.18 hbWmkRbh.net
極めると魔法使いになれる
231:デフォルトの名無しさん
19/03/25 12:33:19.91 O3TyiYmg.net
バカだよなあ。
どんな言語でも出来るがVBAでやるのが最適な場合の質問だろ。
VBAのスレなんだから。
スクレイピングのためにxampp,PHPを学ぶんだよ。
それが最適なら。
Rubyが最適ならRubyでやれ。
でもここではVBAが最適という前提。
オマエの能力が低くてVBAで答えられんことなんか知らん。
232:222
19/03/25 23:50:42.64 mW0SiMKO.net
スクレイピングのために、Apache, MySQL, PHP を学ぶのは、難しすぎる
Ruby なら、PowerShell から、1-liner で、
Rubyで作られた遅いウェブサーバー、WEBrick が起動する
ruby -run -e httpd . -p 8080
そのフォルダに、index.html があれば、
何も考えなくても、これでブラウザからアクセスできる
URLリンク(localhost:8080)
DB は、sqlite3 で良い。
sqlite3.exe なら、外部プロセスとして起動できるし、
sqlite3.dll なら、Rubyプロセス内に、DLLを読み込めばよい
それに多くのブラウザは、内部で、sqlite3 を使っている。
MySQL は大げさ
そもそも単に、CSV・テキストファイルに、保存しちゃダメなのか?
233:デフォルトの名無しさん
19/03/26 00:19:09.71 oh514UWC.net
ruby禁止
234:デフォルトの名無しさん
19/03/26 01:15:56.88 H+8MTdhM.net
いつからスクレイピングとはWEBサーバを立てる事になったんだ
235:デフォルトの名無しさん
19/03/26 01:19:51.23 LqY+kMaC.net
スクレイピングの速度を上げすぎるとDoSと勘違いされない?
pythonとかならちゃんと犯罪にならないレベルで収まるよう対策されてるの?
236:222
19/03/26 02:40:19.99 gZH84WWp.net
wget が、再帰的クローラーのコマンドだけど、オプションでwait 時間も設定できる。
wgetの方が、curl よりも高機能
xampp には、Apache が含まれているから、web サーバーも立てたいのかなと思って
237:デフォルトの名無しさん
19/03/26 08:11:44.77 uoYW3oSf.net
次からruby禁止をスレタイに入れよう
238:デフォルトの名無しさん
19/03/26 09:52:19.15 6lKUP98X.net
バカは自分の無能を言い訳に相手の望まない案を提案する。
誰もRubyでやってくれなんて言ってないんだが。
239:デフォルトの名無しさん
19/03/26 09:56:34.73 YksIzQQu.net
VBAを覚えても馬鹿にされるだけだしVBA程度でプログラミング出来ますって言えないし
本当に辛いよな
240:デフォルトの名無しさん
19/03/26 10:13:52.38 uoYW3oSf.net
>>235
>VBAを覚えても馬鹿にされるだけ
どこで?
これぐらいは基本スキルと思う
>VBA程度でプログラミング出来ますって言えない
誰に大して言うの?
vbaは一般事務や営業が楽するためのツールだよ
vbaプログラマーなんて滅多にいない
241:デフォルトの名無しさん
19/03/26 11:33:39.48 HkFlKNPk.net
昔は同時接続5つくらいまでみたいなマナーのようなのがあったが、今はどうなの?
242:デフォルトの名無しさん
19/03/26 11:43:27.57 v6BkG2hM.net
>>236
そりゃそうだ
ところで他言語連携って、A言語で作ったライブラリをB言語から呼び出すパターンと、
時間的同期を意識しなくていいバッチ的なももの組み合わせみたいなものしかイメージないんだけど、
イベント連携しながら運用するようなパターンもよくあるの?
243:デフォルトの名無しさん
19/03/26 12:18:27.89 uoYW3oSf.net
>>237
図書館のサーバーに大してかなり気を使ってスクレイピングしたにも関わらず、電子計算機損壊になった例もある
どこまでokとかは言えない
244:デフォルトの名無しさん
19/03/26 12:32:19.25 6lKUP98X.net
>>235
いや、普通に言うけどね。
C、C++、Java、VBAとかって。
それに、VBAを使うべきじゃないと言う時もある。
でも、ここで他言語のことを言う奴ってVBAの方が完全に良い場合に他のが良いとか言う無能が多いからなあ。
245:デフォルトの名無しさん
19/03/26 12:32:53.04 6lKUP98X.net
>>239
普通は相手に許可を取るもんだけどな。
246:デフォルトの名無しさん
19/03/26 12:34:55.56 ke9zWH00.net
>>240
シートにデータ張るくらいの簡単なものなら インタフェースできてるからVBAが一番楽。
247:デフォルトの名無しさん
19/03/26 12:35:47.09 uoYW3oSf.net
>>241
取らないよwww
248:デフォルトの名無しさん
19/03/26 12:43:36.07 6lKUP98X.net
>>243
遊びでやってるならどうぞw
事務でも仕事なら取るべきだ。
249:デフォルトの名無しさん
19/03/26 12:46:04.30 uoYW3oSf.net
許可は取らないけおd、API作ってくれとは連絡するかな
250:デフォルトの名無しさん
19/03/26 12:55:18.22 DPMd1MEr.net
VBAのエディターにはVSみたく行番号を表示する機能は標準では備わっていないのでしょうか?
251:デフォルトの名無しさん
19/03/26 13:06:52.15 LqY+kMaC.net
>>246
ない
フリーウェアの助けが必要
252:デフォルトの名無しさん
19/03/26 13:14:58.60 uoYW3oSf.net
昔使ってたな
URLリンク(qiita.com)
たまに欲しいけど、別に無くてもいいかなって
253:デフォルトの名無しさん
19/03/26 13:16:03.76 DPMd1MEr.net
>>247
サンクス
VSと比べていろいろと中途半端ですね。
C#でこれまではずっと開発してましたが
Excel台帳ベースのシステムを組む事になったので
今回は、VBAで開発してます。
大体のことはVBAでできるけど、本格的な開発はやはりVS使わないとダメですね。
254:デフォルトの名無しさん
19/03/26 16:55:11.90 LqY+kMaC.net
>>249
ワークシートなどを含むExcelオブジェクトはVSからでも普通に読み書き操作できるぞ
使っていいんならVSで開発すればいい
255:デフォルトの名無しさん
19/03/26 17:24:40.03 DPMd1MEr.net
>>250
ちょっとした文字列操作とかスクレイピングだから
VBAの方が楽かな~と思って今回数年ぶりにVBAいじってます。
256:デフォルトの名無しさん
19/03/26 18:32:26.11 1ujvGqyy.net
ちょっとした文字列操作とスクレイピングってVBAが一番苦手なやつでは
257:デフォルトの名無しさん
19/03/26 18:42:15.15 uoYW3oSf.net
・スクレイピングは深夜にcron+phpで行ってサーバー上に保存
・vbaはその結果を取得
の二段構えが楽と思うけどな
文字列操作はどんな言語でもなんとかなるやろ
EXCELに入れるとunicode周りが死ぬけど
258:デフォルトの名無しさん
19/03/26 18:53:14.39 1ujvGqyy.net
cron使える環境ならphpなんて大層なもん入れなくてもcurlとかwgetでよくね
259:デフォルトの名無しさん
19/03/26 18:57:02.87 uoYW3oSf.net
どうなんだろうな
俺はもうスクレイピングなんかに多言語勉強したくないから、cronからphp叩いてどうのこうのしている
vbaはもう完全に後始末で、骨拾うだけ
260:デフォルトの名無しさん
19/03/26 20:15:40.62 OL2Ik/OA.net
スクレイピングの主役は通信じゃない
winsockでもwgetでもbitsadminでも良いから取ってきたファイルをどうするか教えてくれよ
261:デフォルトの名無しさん
19/03/26 21:08:44.89 DPMd1MEr.net
>>253
ログインしないと見えないデータなんだよ
なのでクライアントでの取得必須
262:デフォルトの名無しさん
19/03/26 21:16:14.33 IZpVJLyd.net
んなもん2段階認証とかじゃなければセッションなりクッキー投げるだけやん
取ってきたファイルはパーサーに食わせるなり正規表現でゴリゴリするなりだけど
そのどちらもVBAはとても苦手な分野やで
263:デフォルトの名無しさん
19/03/26 21:25:26.00 /NHGfRej.net
認証とかhtmlパーサとかJSエンジンとか
大抵はその辺をIE操作で賄うモノだと思ってたけど自分の認識が違ったらしい
264:デフォルトの名無しさん
19/03/26 21:25:56.25 DPMd1MEr.net
>>258
あんちゃん詳しいな~
そーいうのやったことが無い。
試しにやってみようかな。
265:デフォルトの名無しさん
19/03/26 22:18:57.15 uoYW3oSf.net
basic認証なんかは瞬殺だけど、
セッションとかクッキーになると、諸々含めてphpにした方が良い。というかchrome拡張が一番楽
httpsやらUA絡みだすと小生無理!ってなる。
266:デフォルトの名無しさん
19/03/26 22:19:38.30 uoYW3oSf.net
vbaはwebに向いてないってことだけは覚えておいて欲しい
それだけなんだ
267:222
19/03/26 22:45:37.41 gZH84WWp.net
ログインするなら、Ruby, Selenium WebDriver で、ブラウザを自動操作すべき。
iMacros でも良いけどさ
>>222
に書いてある通り
268:デフォルトの名無しさん
19/03/26 23:07:10.89 DPMd1MEr.net
>>261
年齢を重ねると新しい技術を学ぶのが億劫になるんじゃよ
269:デフォルトの名無しさん
19/03/26 23:28:35.45 Q3YSvizA.net
Excelマクロについて全くの無知でみなさんにお伺いしたいのですが、マクロで画像のような操作は可能でしょうか?会社の書類作成事務の効率を上げたく…
スレ違いでしたらすみません。URLリンク(i.imgur.com)
270:デフォルトの名無しさん
19/03/26 23:38:24.00 WFGn9NdD.net
>>265
VLOOKUPで余裕でしょ
マクロなんか要らん
271:デフォルトの名無しさん
19/03/26 23:41:30.56 oc5f3itp.net
>263
rubyがゴミ言語って事はよくわかった
272:デフォルトの名無しさん
19/03/26 23:53:51.99 DPMd1MEr.net
今更ではあるけれど、C#やVB.netで開発しなくても
だいたいVBAでできるな~
結局データの保存先がDBなどではなく
Excelとかだから最初からVBAで開発しておけばよかったと若干公開
273:デフォルトの名無しさん
19/03/26 23:55:07.78 KxwbGcFA.net
みんながExcelを起動しているとき、
俺の画面だけJexcelだったら格好いいのに・・・。
274:デフォルトの名無しさん
19/03/27 00:00:46.69 b6YT5YdE.net
>>265
大体こういうこととは思うが
URLリンク(dotup.org)
もう少し詳しく伝えてもらわんとなんここっちゃわからん
とりあえずvbaは不要で、
vlookup、indek+matchの合わせ技になる
275:デフォルトの名無しさん
19/03/27 06:10:59.97 6zpqUxeP.net
>>267
>>270
ご親切にありがとうございます!やってみます!
276:デフォルトの名無しさん
19/03/27 07:18:37.18 g4NvvqYE.net
>>244
YahooやGoogleなどの検索エンジンはいちいち許可とってるのか?
277:デフォルトの名無しさん
19/03/27 08:05:19.82 qB5RyyD6.net
>>239
もし岡崎図書館のことを言ってるんなら、一度は逮捕されたけど結果は不起訴で、逆にシステム管理者側が謝罪までしてるんだけど
278:デフォルトの名無しさん
19/03/27 08:22:43.90 VuG/f/aB.net
馬鹿が設計した糞検索システム
279:デフォルトの名無しさん
19/03/27 08:30:41.26 /DQA1U1P.net
>>245
>>272
コミュニケーションが取れない人なのか、知ったかなのか、それとも趣味でやってるだけなのか知らないが、そもそも図書館事件と言えば岡崎市の事件のことだろ。
本当に事件のこと知ってるのか?
図書館側のシステムに問題があったとしても、了解を求めることなくこういうことをするのが問題なのはマナー上当然のことだろうに。
そもそも、ここで言われてるのが岡崎市の事件と全く同じようにアクセスするわけでないのは当然だから、大量アクセスを否定した話にすらなっていない。
こちらの行為について迷惑だと判定するのが向こう側なのに、こっちの勝手な判断に従って了解を求めることすらしないじゃ趣味といわれても仕方ない。
>>239に対して許可を取るのが普通という発言を受けて「API作ってくれ」と連絡するってのが、全く意味が分からん。
コミュニケーションって分かる?
相手にこちらが何をしたいかも伝えずにAPIの話をするんかねw
280:デフォルトの名無しさん
19/03/27 08:32:19.22 /DQA1U1P.net
>>273
有名な事件だから顛末はすべて分かってるけど、これ以降、連絡するのはマナー上当然という流れになってると思うが。
281:デフォルトの名無しさん
19/03/27 08:33:13.53 g4NvvqYE.net
>>275
お前、何いってんの? 図書館の問題なんか関係ないわ。そんな話はしていない
びっくりしたわ
コミュニケーションが取れない人ってお前自身じゃね
282:デフォルトの名無しさん
19/03/27 08:50:55.41 qyHdViw9.net
コミニュケーションつかマウント取りたいだけ。
マウント取るため勝手に論点ずらし、話題変更。
283:デフォルトの名無しさん
19/03/27 08:51:51.44 g4NvvqYE.net
NGIDでもしとくか
284:デフォルトの名無しさん
19/03/27 09:05:24.83 /DQA1U1P.net
>>277
それまでのやり取り見てから言えよ。
お前は>244に対して発言してるんだろ。
>>244の話の起点は>>239なんだよ。
そんなことも分からないからコミュニケーションが取れないと言われるわけだw
285:デフォルトの名無しさん
19/03/27 09:09:47.26 /DQA1U1P.net
>>277
それと、誤解を与えたと思うが、そもそもの知ったかとかコミュニケーションとかは>>245に対して言ってたつもり。
たまたま、タイミング良く>>272の発言があったから、一緒にアンカーつけたけどな。
286:デフォルトの名無しさん
19/03/27 09:18:24.88 /DQA1U1P.net
>>275は
>>237、>>239、>>241ときて>>245の意味が全く分からなくての発言だ。
岡崎事件を挙げて、どこまでokとかは言えないと言っておきながら無断でスクレイピングすると言ってる。
全く意味が分からねえ。
287:デフォルトの名無しさん
19/03/27 09:29:20.58 7IO5xMdH.net
スクレイピングで許可がいるってどういう時だ?
そもそもスクレイピングってブラウザの手動操作を経由しないGetリクエストが全部該当しちゃうの?
288:デフォルトの名無しさん
19/03/27 09:46:33.15 tQ4XPcUj.net
頻度の問題なんだよ
秒間一回のリクエストで逝くゴミサイトだろうが、それで迷惑がかかるなら業務妨害になる可能性がある
検索エンジンは特定のサイトに頻繁にポーリングかけたりはしない
289:デフォルトの名無しさん
19/03/27 10:07:46.17 1/Djbd0f.net
マナーとかいう自分ルールでマウント取ってるだけだから無視でいいよ
290:デフォルトの名無しさん
19/03/27 10:38:41.64 SENvFn41.net
>>283
ループコードでブラクラといってくる
無能警察(兵庫県警)がいるからそこだけ問題
291:デフォルトの名無しさん
19/03/27 10:46:27.13 7IO5xMdH.net
>>284
スクレイピングで検索しても頻度のことは言っておらずループで回すこととも結びつかない解説が多いんだよね。
だから「ボタン押す都度なんかやる」ってだけのプログラムも対象になりうるんじゃないかと心配になる。
292:デフォルトの名無しさん
19/03/27 11:09:17.76 g4NvvqYE.net
なんか左の番号に抜けがたくさんあるんだが、発狂でもしてんの?w
293:デフォルトの名無しさん
19/03/27 11:15:22.00 1/Djbd0f.net
そういうあぼん報告が一番ダサいし荒らしと同程度に邪魔
294:デフォルトの名無しさん
19/03/27 11:20:36.67 g4NvvqYE.net
そうかい、悪かったなw
295:デフォルトの名無しさん
19/03/27 12:16:26.49 qB5RyyD6.net
無能な警察が存在するのは事実なんだから、その対策もエンジニアは考えておくべきだな
対策せずに逮捕されても自業自得
296:デフォルトの名無しさん
19/03/27 14:45:35.60 SENvFn41.net
兵庫県警の無能さを舐めたら逮捕されるで
URLリンク(trendy15.info)
297:デフォルトの名無しさん
19/03/27 18:22:44.74 /DQA1U1P.net
>>285
>>237で始まったマナーの話なのに自分ルールにされる�
298:フは如何なものか。
299:デフォルトの名無しさん
19/03/27 18:25:48.12 1/Djbd0f.net
だから無視しろって言ってんだろ
300:デフォルトの名無しさん
19/03/27 18:40:43.91 /DQA1U1P.net
>>294
ん、俺を無視しろと言ったんじゃ無いのか?
301:デフォルトの名無しさん
19/03/27 18:51:37.49 5WFP8xQ3.net
図書館の奴は
ddosでも無いのに拘留期間が長かったのが問題だと自分は思ったな当時
302:デフォルトの名無しさん
19/03/27 19:45:35.45 BAe8z9/n.net
IT分野に関しては日本はシナにも劣る土人国。
winny潰しも酷かったな。
303:デフォルトの名無しさん
19/03/27 23:33:40.70 SENvFn41.net
コインヘイブの件しかり日本警察のIT力は
世界最下位
304:デフォルトの名無しさん
19/03/28 04:24:21.91 Wtvk2F5L.net
スクレイピングは、1日1回までなら大丈夫。
検索エンジンは、そうしてる
相手のrobot.txt に書いてある
何回もリロードすれば、手動でも、営業妨害で逮捕される。
だからテストでも、他人のサイトには、絶対にアクセスしない
とにかく、相手の業務を妨害したら、逮捕されるだけ
305:デフォルトの名無しさん
19/03/28 08:57:55.98 5jfiWKtJ.net
>>299
適当すぎる
図書館の件は何も分かって無い警察の見せしめ逮捕だよ
罪状も計算既損化い
306:トレード神
19/03/28 09:14:56.43 iot7Ha6W.net
>>300
兵庫県警がそもそもバカだから
それが問題
1日1回とか遠慮しすぎ