[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/05 07:16 / Filesize : 254 KB / Number-of Response : 1006
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part69



1 名前:デフォルトの名無しさん mailto:sage [2020/12/13(日) 00:22:23.67 ID:Fd224klc0.net]
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける

ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK

※前スレ
Excel VBA 質問スレ Part68
https://mevius.5ch.net/test/read.cgi/tech/1598756127/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

267 名前:デフォルトの名無しさん mailto:sage [2021/01/17(日) 21:03:01.02 ID:Bpeq2DcA0.net]
それはすでに使ってるシェイプの名前だろう
使ってない奴から選びたいんだろう

268 名前:デフォルトの名無しさん mailto:sage [2021/01/17(日) 21:25:06.25 ID:6FyugFd+d.net]
>>265
返信ありがとうございます
下記のオートシェイプに入力されたテキストを検索して置換するコードじゃなくてオートシェイプの名前を検索して置換したいのですがどこを直せばいいのでしょうか
Sub 置換() Dim tbox As Object Dim findStr As String Dim replaceStr As String Dim count As Long Dim i As Long Dim myDocument As Worksheet findStr = InputBox("置換対象文字列") replaceStr = InputBox("置換文字") Set myDocument = Worksheets(1) myDocument.Shapes.SelectAll
For i = 1 To myDocument.Shapes.count If myDocument.Shapes(i).Type = msoGroup Then Selection.ShapeRange.Ungroup.Select For Each tbox In Selection.ShapeRange tbox.TextFrame.Characters.Text = _ Replace(tbox.TextFrame.Characters.Text, findStr, replaceStr)
Next Selection.ShapeRange.Regroup.Select Else
Set tbox = myDocument.Shapes(i).TextFrame tbox.Characters.Text = _ Replace(tbox.Characters.Text, findStr, replaceStr)
End If
Next
End Sub

269 名前:デフォルトの名無しさん mailto:sage [2021/01/17(日) 21:32:27.18 ID:sTdEmPzt0.net]
聞く気ないだろw

270 名前:デフォルトの名無しさん mailto:sage [2021/01/17(日) 22:02:29.00 ID:Bpeq2DcA0.net]
そのようだなw

271 名前:デフォルトの名無しさん [2021/01/17(日) 22:10:02.50 ID:vD50J/Wf0.net]
適当にコードをコピペして聞きだそうとする手口

272 名前: mailto:sage [2021/01/17(日) 22:23:21.58 ID:gYjAP2D00.net]
質問です。よろしくお願いいたします。
VBA でスクレイピングを行っています

対象ページ:https://www.rakuten-sec.co.jp/web/market/data/rub.html ‥@
取得したい要素、 CSS セレクタで記載:document.querySelector("#cFx > table:nth-child(6) > tbody > tr:nth-child(1) > td.cell-02 > em").innerText  ‥‥A

しかし、Aは google chrome では取得できて、しかもコンソールでAを指定した場合も目的の値を取得できていますが、
Aを IE11 ->F12 で表示できるコンソールに食わせても、目的の値を取得できません。

質問1:google chrome におけるページ@のCSSセレクタAは、IE11 ではどのようになるのでしょうか?‥‥B
質問2:IE11 でBを取得する方法はどのようなものでしょうか?

以上よろしくお願いいたします。

273 名前:デフォルトの名無しさん [2021/01/17(日) 23:48:28.14 ID:7Jg8yd50M.net]
>>267
いろいろと修正箇所が多いので
https://qiita.com/Umaremin/items/b7726fa7340c7f175e77
このサイトのコードの
4行目の後に
Dim findStr As String, replaceStr As String
findStr = InputBox("置換対象文字列")
replaceStr = InputBox("置換文字")
'各Shapeに対する処理の2箇所に
shp.Name = Replace(shp.Name, findStr, replaceStr)
を追加すればうまく出来ると思う

ちなみに、理由は知らないけどリボンのページレイアウトの中のオブジェクトと選択と表示のシェイプの名前を変えずにデフォルトのままだとVBAが出す名前が英語表記になるので注意

274 名前:デフォルトの名無しさん mailto:sage [2021/01/18(月) 02:58:44.09 ID:pyrT8iNXH.net]
ちょっとソースを整理

Sub 置換()
  Dim tbox As Object
  Dim findStr As String
  Dim replaceStr As String
  Dim count As Long
  Dim i As Long
  Dim myDocument As Worksheet

  findStr = InputBox("置換対象文字列")
  replaceStr = InputBox("置換文字")
  Set myDocument = Worksheets(1)
  myDocument.Shapes.SelectAll

  For i = 1 To myDocument.Shapes.count
    If myDocument.Shapes(i).Type = msoGroup Then
      Selection.ShapeRange.Ungroup.Select
      For Each tbox In Selection.ShapeRange
        tbox.TextFrame.Characters.Text = Replace(tbox.TextFrame.Characters.Text, findStr, replaceStr)
      Next
      Selection.ShapeRange.Regroup.Select
    Else
      Set tbox = myDocument.Shapes(i).TextFrame
      tbox.Characters.Text = Replace(tbox.Characters.Text, findStr, replaceStr)
    End If
  Next
End Sub

275 名前:デフォルトの名無しさん mailto:sage [2021/01/18(月) 06:51:20.31 ID:hmFdo1dud.net]
>>272
言われた通りにやったら出来ましたありがとうございます。
自分がやりたかったことと同じでした。
>>273さんも整理してくれてありがとうございます。



276 名前:デフォルトの名無しさん mailto:sage [2021/01/18(月) 12:58:34.46 ID:JT9EgKXH0.net]
>>271
漏れが、Ruby, Selenium WebDriver, Chrome でアクセスしたら、空要素が返ってきた

CSS の :nth-child() 擬似クラスは、
兄弟要素のグループの中での位置に基づいて選択します

https://developer.mozilla.org/ja/docs/Web/API/Document/querySelectorAll
Document.querySelectorAll()

elementList = parentNode.querySelectorAll(selectors);
指定された selectors が CSS 擬似要素を含む場合、返されるリストは常に空になります

エラーログ

"jQuery.Deferred exception: Cannot read
property 'msie' of undefined TypeError: Cannot read property 'msie' of undefined

at HTMLDocument.<anonymous> (https://www.rakuten-sec.co.jp/web/shared/js/app/jquery.share-button.js?20160125:5:415)
at l (https://www.rakuten-sec.co.jp/web/shared/js/jquery.js:2:29375)
at c (https://www.rakuten-sec.co.jp/web/shared/js/jquery.js:2:29677) undefined",
source: https://www.rakuten-sec.co.jp/web/shared/js/jquery.js (2)

ひょっとして、そのサイトがバグっているのかも?
それかログインなど、特別な認証が必要なのかも?

277 名前:275 mailto:sage [2021/01/18(月) 13:03:01.53 ID:JT9EgKXH0.net]
それか、

jquery.share-button.js
と書いてあるから、

jQuery で作った画面か何かの、ボタンをクリックするなどの、
人間による操作が必要なのかも?

278 名前:デフォルトの名無しさん mailto:sage [2021/01/18(月) 13:14:48.80 ID:ipljQC5/a.net]
まあでもVBA関係ないな

279 名前:275 mailto:sage [2021/01/18(月) 13:39:24.37 ID:JT9EgKXH0.net]
そのサイト固有の問題かも。
それに、IE 11 はサポート切れで、多くのサイトで、まともに動かない

基本、Chrome しか動かない。
Chrome以外のブラウザは、まともに動かない

280 名前: mailto:sage [2021/01/18(月) 23:04:09.16 ID:lUOrFzyB0.net]
>>275,276,278
検証いただきありがとうございます
なにぶん、単に株価等をスクレイピングするためだけに年始から web スクレイピングを始めたばかりなので、難しいことはよくわかりません‥‥
やっぱり HTML5/CSS の基礎本からじっくりやるしかないでしょうか

引き続き、なにかコメントがありましたらよろしくお願いいたします‥‥

>>277
VBA で
Dim objIE As InternetExplorer
Set objIE = New InternetExplorer
objIE.navigate ur
時間待ちl
Dim htmlDoc As HTMLDocument
Set htmlDoc = objIE.document
Dim elementText As String
elementText = htmlDoc.querySelector("#cFx > table:nth-child(6) > tbody > tr:nth-child(1) > td.cell-02 > em").innerText
と書いていますが、それでもやっぱり VBA は関係ないのでしょうか?

281 名前:デフォルトの名無しさん mailto:sage [2021/01/18(月) 23:19:34.42 ID:froKP66m0.net]
スクレイピングが目的なら悪いことは言わないから大人しくpythonあたりにしとけ

282 名前:デフォルトの名無しさん [2021/01/19(火) 00:16:19.06 ID:9X7jktdiM.net]
今月からpythonを始めてサイトから文字を取ってきてエクセルにぶち込むくらいなら一週間で出来たな
その後のエクセルの処理はもちろんVBAだけどなw

283 名前:デフォルトの名無しさん mailto:sage [2021/01/19(火) 00:26:22.17 ID:i//ZhdNzH.net]
最近のホームページはブラウザごとに動作が違うから、本などを参考にするなら同じブラウザを使わないと、
本質と無関係なところではまって時間を無駄にすることになる

あと株価なんかスクレイピングしてもまったく意味ないぞ
どんだけ大量の数字を集めたところで、それで利益が出せると思ったら大間違いだからな

284 名前: mailto:sage [2021/01/19(火) 01:15:30.84 ID:LIV1Afk50.net]
>>282
>どんだけ大量の数字を集めたところで、それで利益が出せると思ったら大間違いだからな
そのとおりだと私も思います、ただし、さや取り(裁定取引)を米国株に適用するのなら商機あり、とみています
さや取り(裁定取引)とは:https://investars.jp/sayatori.php

285 名前:デフォルトの名無しさん mailto:sage [2021/01/19(火) 06:36:37.01 ID:6NIqY8sOM.net]
そもそも自動売買に使う頻度でスクレイピングって規約確認したのか?



286 名前:275 mailto:sage [2021/01/19(火) 07:21:09.11 ID:JrdPscbl0.net]
>>275
を修正

275は、ヘッドレスモードで動かしたので、エラーになったけど、
表示させて動かしたら、エラーにならなかった

でも、要素は取得できなかった

IE11 は、もうサポート切れじゃないの?
使わない方が良い

基本、Chrome を使うべき!

287 名前:275 mailto:sage [2021/01/19(火) 07:23:53.98 ID:JrdPscbl0.net]
勝手に頻繁にスクレイピングしたら、業務妨害で逮捕されるよ

基本、どの会社のサービスでも、
相手と契約して、API を使わないといけない

288 名前:275 mailto:sage [2021/01/19(火) 07:51:13.37 ID:JrdPscbl0.net]
そもそも、そのページ内に、id="cFx" が存在しない

var elems_1 = document.querySelectorAll( '#cFx' );
var elems_2 = document.querySelectorAll( '#cFx > table:nth-child(6) > tbody > tr:nth-child(1) > td.cell-02 > em' );
console.log( elems_1, elems_2 );

Chrome のF12 開発者ツールで実行しても、どちらも取得できない

289 名前:275 mailto:sage [2021/01/19(火) 08:28:20.74 ID:JrdPscbl0.net]
Chrome のF12 開発者ツールのコンソール画面を開くと、幾つかエラーが出てる

ログインしてるとか、営業時間内とか、
何かの条件が揃わないと、

そのページ内に、id="cFx" が現れないのかも

290 名前: mailto:sage [2021/01/19(火) 23:14:02.19 ID:LIV1Afk50.net]
>>286
IB証券との契約を検討中です
nyse と nasdaq 両市場の全上場株式を取得する必要はありますが、頻度は一社につき一日に一回だけでいいのが裁定取引のいいところだと思っています

291 名前:275 mailto:sage [2021/01/20(水) 06:54:28.87 ID:sOzWFlEJ0.net]
エンジニアチャンネル・粟島が、
2つの取引所の価格差を利用して、Ruby で鞘取りしてる

【検証】プログラミングでビットコインを自動売買すると一週間でいくら稼げるのか?
https://www.youtube.com/channel/UCMMjv61LfBy5J3AT8Ua0NGQ

292 名前:デフォルトの名無しさん mailto:sage [2021/01/20(水) 19:14:01.82 ID:WKaEu4ler.net]
初心者です。
質問をさせてください。
A列のデータをソートして、境目に改ページを適用するVBAを組みました。
その後にもう1つ動作を組み込みたいのですが、可能でしょうか?
組み込みたい動作は、
改ページの境目の1つ上のC列の内容をF1セルに都度反映させる。
イメージとしては、改ページで分けた内容ごとにタイトル行の一部を変えたい、といった感じです。
例:都道府県別に改ページをし、
東京の場合はタイトル行に東京と入れ込む。
そもそも無理なのかもしれませんが、お伺いしたく。。

長文失礼しました。
ご教示いただけますよう、お願いいたします。

293 名前:デフォルトの名無しさん mailto:sage [2021/01/20(水) 20:49:26.31 ID:j7C4dot+0.net]
まずその通りやってみればいいのに

294 名前: mailto:sage [2021/01/20(水) 20:58:51.72 ID:TIrvz66u0.net]
>>290
面白い動画を紹介いただきありがとうございました。
しかし裁定取引では、売りと買いの両方ができないと実現は困難かと考えています
BTC を売りから入ることは、たしか、まだできなかったのではないかと思います

295 名前:デフォルトの名無しさん mailto:sage [2021/01/21(木) 21:48:26.77 ID:YIL/x+Jj0.net]
ソルバーが全然うまくいかないし会社の人も誰もソルバー自体知らんかった
マイナーか…



296 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 02:14:04.86 ID:JMbV/GNCa.net]
何て会社?

297 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 02:36:21.59 ID:hl68e8TDH.net]
ソルバーは基本原理がわかってないと、どんな計算でもできると思い込んでるとはまる

298 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 08:31:07.53 ID:2tHgWLf00.net]
上司と折りがあわずに部署異動になったのに
その職場の連中がlineでマクロが使えんくなったとか簡単に直せるかとか聞いてきて本当にうざい
自分も覚えてないの一点張りで返してるけど
Excelの数式すらまともに使えずに開発タブもチェックしてない連中に直せんわ
連絡してくんなよ

299 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 08:35:33.62 ID:+nZCsLp6M.net]
で、質問は何ですか?

300 名前:デフォルトの名無しさん [2021/01/22(金) 08:41:50.70 ID:hJPaHw/b0.net]
すいません、教えてください。
Excel VBAでIEを制御しています。IEからデータをもって来てExcelに書き込んだり、
逆にExcel上のデータをIEに書き込んだり。
で、そろそろIEも駆逐されるみたいなのでEdgeとかChromeに対応させなくてはなりません。
そのままでは無理で、Web Driverとか、Selenium Basicが必要。
ここまであってますか?
で、これでEdgeとかChromeに対応した.xlsmを作ったとして、配布するとしたら、配布された側のPCにも
Web Driverとか、Selenium Basicをいれないといけないですか?

301 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 10:48:34.97 ID:NBj8+FQEd.net]
エクセル VBA マクロで良い参考書はありますか?

302 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 10:54:17.14 ID:Ti3taKZXr.net]
まだブラウザ操作しようなんてとこあるのか

303 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 12:22:32.49 ID:I4Aue8uTa.net]
>>296
できると思ってんだけどなー、できないやつなのかもしれんな

304 名前:299 [2021/01/22(金) 14:11:09.33 ID:hJPaHw/b0.net]
>>301
Excel と IE というどのPCにでも入っているもので使えるので、5年前くらいからやってます・・
今回、PCに何かインストールしないとできなくなるみたいなので、どうしようかと・・

305 名前:デフォルトの名無しさん [2021/01/22(金) 14:15:47.27 ID:y6abuyBz0.net]
どうしようもないだろ
はい、次



306 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 14:41:53.73 ID:hl68e8TDH.net]
>>303
何も追加インストールせずにEdgeをコントロールする方法ならここに書いてある
サンプルは32bit版だけどPtrsafe追加だけで64bitでも動く
https://www.ka-net.org/blog/?p=7921

ただしこの方法はWindowsやEdgeのバージョンが上がると使えなくなる可能性があるので注意

307 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 15:06:57.75 ID:KA18g7jM0.net]
Ruby, Selenium WebDriver, Chrome が一般的

308 名前:299 [2021/01/22(金) 16:52:44.80 ID:hJPaHw/b0.net]
>>305
ありがとうございます。最新のChromeベースのEdgeでは使えないことが判明しました・・

>>306
rubyというのを使う場合、実際に動かすときはxlsmファイルと別に何かプログラムを記載した
ファイルを準備し、そのファイルを実行するというイメージになるのでしょうか?

309 名前:306 mailto:sage [2021/01/22(金) 17:48:37.37 ID:KA18g7jM0.net]
例えば、ヤフーに自動ログインするなら、
ユーザー名を入力して、ボタンをクリック、
パスワードを入力して、ボタンをクリック

以下のコードを、a.rb に書いて、ruby a.rb みたいに実行する。
パソコン内に、Ruby の実行環境を構築しないといけないけど

require "selenium-webdriver"

options = Selenium::WebDriver::Chrome::Options.new
options.add_option( :detach, true ) # ブラウザを切り離す
options.add_argument( '--start-maximized' ) # 画面最大

driver = Selenium::WebDriver.for :chrome, options: options
driver.manage.timeouts.implicit_wait = 10 # default timeout

driver.navigate.to "https://login.yahoo.co.jp/config/login_verify2?.src=ym"

element = driver.find_element(:id => "username")
element.send_key "ユーザー名"

driver.find_element(:id => "btnNext").click # ボタンをクリック

element = driver.find_element(:id => "passwd")
element.send_key "パスワード"

driver.find_element(:id => "btnSubmit").click # ボタンをクリック

310 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 19:04:19.47 ID:fPx0q4lA0.net]
>>308
アホか?
WebDriver使って良いならVBAだって出来るだろwww

311 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 19:10:53.50 ID:AXkriLC/M.net]
seleniumでググるとPythonのほうが出てくると思うんだが本当にRubyのほうが一般的か?

312 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 19:14:00.08 ID:j9mQzeTK0.net]
狭い世界を一般的という人はどこにでもいる

313 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 19:26:14.35 ID:AXkriLC/M.net]
環境のこと考えるならGASかpowershellを検討してみては?

314 名前:デフォルトの名無しさん mailto:sage [2021/01/22(金) 23:52:36.81 ID:hl68e8TDH.net]
>>307
最新のEdge (バージョン88.0.705.50 Chromium) で動いた

315 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 00:14:35.39 ID:tp3qQjJz0.net]
>>313
それEdge じゃねえだろ。
今のEdgeはInternet Explorer_Server無いぞ。



316 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 04:24:33.18 ID:W5gOUdwX0.net]
できる奴はネットも本も見ない、わからない事はF1押して調べるだけ

これ定説

317 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 04:56:15.16 ID:xJNbQORc0.net]
みんながそんな熟練者じゃないんだし
俺みたいなど初心者をここで助けてくれた人もいる
平和にいこう

318 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 09:29:09.37 ID:W5gOUdwX0.net]
そうですよねやっぱ
どこかの知恵袋と違って、ここはみんな優しく解説までしてくれる。器大きいぜ

319 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 11:21:37.02 ID:XQqwzCqOd.net]
どの方法だってバージョンアップで使えなくなる可能性はある
CSSやJavaScriptが必要なければXHRオブジェクトが無難

完全にデファクトスタンダードと言えるブラウザが今は存在しないから、VBAでスクレイピングは鬼門になりつつある
今はまだWindowsマシンには必ずIEが入ってるから、しばらくはIEでやってくのがいいんじゃないかなあ

320 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 12:55:12.09 ID:E44LngeNd.net]
俺が昨日、勉強したことを共有するぞ
VBAの記述の仕方は、オブジェクト.プロパティの順番だ
覚えておけよ

321 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 12:56:50.53 ID:E44LngeNd.net]
MsgBox でTESTと表示できたときの感動ったらなかったね!
これから、少しずつ勉強するぞ

322 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 18:45:02.47 ID:H5pOJUEN0.net]
>>305
それIEでも使うな。
よくわからんけど、F12で中が見られない子ウインドウが出るサイトとかある。

323 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 21:45:57.51 ID:AoWSUa07d.net]
>>321
それ単なる画像じゃね?

324 名前:デフォルトの名無しさん mailto:sage [2021/01/23(土) 23:31:46.72 ID:H5pOJUEN0.net]
>>322
ObjectFromLresultとgetElementByで値取れるから画像じゃないと思う。
どういう仕組みのウインドウなのか知らんけど。

325 名前:デフォルトの名無しさん mailto:sage [2021/01/24(日) 05:01:50.09 ID:O96X//w/0.net]
田中君
広瀬君
桜井君
松岡君



326 名前:デフォルトの名無しさん mailto:sage [2021/01/24(日) 11:41:17.66 ID:NPfUvm+L0.net]
>>323
それで取れるならF12でも取れるんじゃね?
それかF12押してる対象が違うか。

327 名前:デフォルトの名無しさん mailto:sage [2021/01/25(月) 00:06:00.16 ID:bvf1oedN0.net]
>>325
クリックして、アクティブ&最前面にしてF12押しても何も出てこないんだよね。

328 名前:デフォルトの名無しさん mailto:sage [2021/01/25(月) 01:12:50.11 ID:YwFiLI6Vd.net]
>>326
エロサイトでも怒らないから、ちょっとそのサイト晒して

329 名前:デフォルトの名無しさん mailto:sage [2021/01/27(水) 02:51:52.41 ID:jiG8/Aof0.net]
>>326
Fが12個表示されてないか?

330 名前:デフォルトの名無しさん mailto:sage [2021/01/27(水) 08:04:15.56 ID:rs7ltanux.net]
F*ck F**k FFFFF**k

331 名前:デフォルトの名無しさん mailto:sage [2021/01/27(水) 16:24:41.99 ID:q3mmuO0LH.net]
下記の4行で問題なくIEでURL開けたのですが、

Dim objIE As InternetExplorer
Set objIE = New InternetExplorer

objIE.Visible = True
objIE.Navigate "aaa.com/bbb.html"

保存する部分のプログラムがネット上で見つかりません。
hogehoge.htmlでc:\でもエクセルファイルパスでも。

開ききるまでの Do Loop とか、参照の追加とか、
他の必要な事項はわかったのですが、「保存」だけがわかりません。

お願いします。

332 名前:デフォルトの名無しさん mailto:sage [2021/01/27(水) 16:48:32.96 ID:PEXoVVseH.net]
>>330
URLDownloadToFile
https://tonari-it.com/excel-vba-windowsapi-urldownloadtofile/

333 名前:デフォルトの名無しさん mailto:sage [2021/01/27(水) 19:08:59.20 ID:SKP56GPf0.net]
コレクション便利すぎワロタ

334 名前:299 [2021/01/27(水) 23:35:24.32 ID:L0AdvpAm0.net]
とりあえず個人のPCでSelenium BasicとChrome Driverをダウンロードして、VBAでChromeを操作してみました。
構文の違いを理解するのにちょっと時間がかかりましたが、VBAでIE操作と同じようなことができました。
しかし、IEに比べてかなり遅いですね。。
とくにFor-nextとかFor eachとかで複数個あるClassを一個ずつ取得してくのがかなり遅い・・。

335 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 05:46:17.68 ID:u8tdLuFb0.net]
>>330
最近のWindows には、curl コマンドも入った

コマンドプロンプトで、where curl
と入力すると、
C:\Windows\System32\curl.exe

これとは別に、PowerShell にも、curl コマンドがあるけど、
これは別のコマンドのエイリアスだけど



336 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 10:11:50.01 ID:ecmWwtyQH.net]
>>331
ありがとうございます。無事目的は果たせました。
ただし、2点、罠が潜んでました。解消しましたので謎解きは不要です。

1 コピペで張り付けたとき、URLを指定してる行が赤くなって、VBAに否定されました。
  URL"のあとのセミコロンがお気に召さなかったようです。削ったら赤い表示は消えました。
  コピペしたときに改行コードがかわった?

2 取りに行く相手が社内サーバのドメイン持ちだったのでドメイン指定したら、なんかダメで、
  MACも以前そんな反応したことを思い出して、IPアドレス(192.168.*.*)で指定したら動きました。

>>334
curl について調べましたが、数か所で見た説明自体がわかりませんでした。(泣)
お手数かけました。

337 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 10:21:40.83 ID:8thmnp2a0.net]
>>315
熟練者はそれだけ分かるのかー
そもそもvbaのマニュアルというものがないしやりたいことのプロパティやメソッドは皆どうやって調べてるのか気になる
まあ今はネットあるけどネット普及してなかった90年代はF1で調べてた?

338 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 10:58:39.20 ID:3f25njR4H.net]
>>336
90年代はみんなマニュアル本を買ってた
中身は英語のオンラインヘルプを翻訳して印刷しただけの物なんだけど、誤植と誤訳だらけ
VBAに限らず、1冊3000円〜8000円ぐらいのぶ厚い本が大きい本屋のパソコンコーナーに並んでた

339 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 11:18:10.18 ID:3f25njR4H.net]
こういう辞書みたいなやつ、みんな持ってた
https://i.imgur.com/D0Vbidw.png

340 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 11:56:54.04 ID:RkzGmpaJd.net]
あ、そうなのか
こうゆう辞書みたいな本はマイクロソフトから情報もらって作ってたのかなね
英語ヘルプで試行錯誤で作ってたのかね

341 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 11:58:15.69 ID:8m13k+420.net]
これじゃないけど分厚いの1冊持ってるわ

342 名前:デフォルトの名無しさん [2021/01/28(木) 15:38:23.08 ID:jA4rpiExM.net]
今のExcel VBAって日本語ヘルプ付いてないの?

343 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 15:51:32.46 ID:zfNxSqnZd.net]
>>339
発売前に英語版のヘルプが入ったCDをMSから送って貰って、それを手分けして翻訳した
Officeじゃないけど翻訳のバイトしてた

>>341
あるけど、今はオンラインヘルプに飛ばされるからネット環境がないと見れない
昔のバージョンはローカル化できたけど今は無理だと思う

344 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 15:53:40.51 ID:8m13k+420.net]
F1ヘルプはあんま役に立たない

345 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 15:55:46.33 ID:8thmnp2a0.net]
>>342
バイトすごいですね
今は何の職業?



346 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 19:35:23.37 ID:1VXsvNu50.net]
Excelのハイパーリンクをクリックするたびに

MSのサイトにアクセス先の情報を送って
そこからリダイレクトしていたという
衝撃の事実を今日知った。

10年以上つかってて気が付かなかったよ
死ねこいつら

347 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:13:31.96 ID:RkzGmpaJd.net]
>>345
え、これマ?

348 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:18:19.29 ID:cYs3zIiO0.net]
ソースを

349 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:26:06.12 ID:1+p+qv3s0.net]
これ買っとけばいいみたいなど定番の本はある?
ネットでやりたいことをちょこちょこパクって繋げてるけど限界だわ
汎用性の高い一つの大掛かりなVBAを組もうとしたら圧倒的に知恵がない

350 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:34:03.81 ID:8m13k+420.net]
ネットで調べても書き方が人それぞれだったりちゃんと整理されれなかったり
肝心の自分の目的を書いてなかったりそんなんばっかだからな。
それらの無駄とストレスを減らすために、辞書は1冊あった方がいいな。
書き方と順序が統一されてるだけでも有用。

351 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:35:31.88 ID:8m13k+420.net]
できる大辞典は定番ではある
他の本はいらん
これにないなら諦めて他で調べればいい

352 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:54:55.16 ID:8thmnp2a0.net]
vbaでIEとかChromeとか操作できるのは最近分かったけど(やったことはない)、他に操作できるアプリってどのくらいあるの??

353 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 20:55:48.34 ID:8m13k+420.net]
エッジもできる

354 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:05:03.93 ID:8thmnp2a0.net]
あ、ブラウザー以外でおねがいしゃす

355 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:09:54.36 ID:eBfsAdOM0.net]
>>345
それExselとか書いてないかい?w



356 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:27:46.20 ID:1VXsvNu50.net]
https://superuser.com/questions/444984/excel-hyperlink-not-redirecting-properly-bug


This is a known Microsoft bug where hyperlinks are redirected to another page if:

You are using Microsoft Internet Explorer:
with a proxy server
while using a firewall that does not allow HTTP requests on your local network
Internet Explorer is not your default browser.
The ForceShellExecute registry key is not present or is not set to 1

You can apply the fix from here:

support.microsoft.com/kb/218153

バグなんてもんじゃねえ

357 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:31:23.39 ID:ABoKcn6c0.net]
>>351
参照設定の中に入ってるのは普通に動かせるし、
WindowsAPIとUIAutomationとSendKeysがあるから、
マウスとキーボードで動かせるようなものなら大抵。
極端な例を言うと、VBAで仮想のファミコン(エミュ)を作ってマリオ動かす人もいる。

358 名前:デフォルトの名無しさん [2021/01/28(木) 21:34:15.56 ID:46r/uxOM0.net]
>>348
「一度死んでみた」

359 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:37:00.50 ID:ABoKcn6c0.net]
って書いてて思ったんだけど、
IRモジュール使ってVBAでテレビとかエアコン動かせる人いる?

360 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:50:11.88 ID:O9WqV6fA0.net]
俺さ、VBAのソース書いてて
インテリセンスが糞だと思ってたけど
上には上があるんだなぁ

今ClassicAspとかいう昔の組んでるんだけど
HTMLとJavaScriptとVBScriptで出来てて
テキスト編集ツール使って
テキストファイルで作ってる
もちろんインテリセンスなんて全く効かない

そうなると一番怖いのが文法エラー
VBAなんかだと一発で分かるけど
最初っからコンパイル自体されないので
どこでエラーになっているか
全く分からない

361 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:57:01.68 ID:SI9VK8hs0.net]
ブラウザの開発ツールの使い方を知らないだけでは

362 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 21:58:09.32 ID:8thmnp2a0.net]
>>356
vbaでエミュってエミュをvbaで起動してるってことではなく?
何をどうやったら作れるのか不思議
vbaでIoTの組み込みや操作も可能なのだろうかー

363 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 22:02:50.14 ID:TxA55uF+M.net]
元々仕事でなんとなしに触らざるを得なくなってコピペやらその場限りのググりで生きながらえてきたんだけどちゃんと筋道立てて1から勉強したいというときに適した本やサイトはありますか?

364 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 22:04:15.85 ID:8m13k+420.net]
本はある
サイトはない

365 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 22:04:36.53 ID:8m13k+420.net]
本も当然、1冊では終わらん
入門編から順に買うことになる



366 名前:デフォルトの名無しさん [2021/01/28(木) 22:05:55.11 ID:46r/uxOM0.net]
>>359
馬鹿は黙っていればいいのに

367 名前:デフォルトの名無しさん mailto:sage [2021/01/28(木) 22:49:59.34 ID:TfrdJEz20.net]
>>362
慣れてきて半人前くらいになってきたな、と思うならこの本

入門レベルでは決して足りない実務に必須のスキルとは ExcelVBA 実戦のための技術






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<254KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef