!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付けるナリ
ExcelのVBAに関する質問スレナリ
コード書き込みや作成依頼もOKナリ
※前スレ
Excel VBA 質問スレ Part70
https://mevius.5ch.net/test/read.cgi/tech/1616072923/
Excel VBA 質問スレ Part71
https://mevius.5ch.net/test/read.cgi/tech/1621914481/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Excel VBA 質問スレ Part73
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 4668-xJJl)
2021/09/13(月) 07:29:59.47ID:GNx0xRRz0712デフォルトの名無しさん (ワッチョイ f7fd-DHDw)
2021/11/26(金) 00:05:14.55ID:fWkXgzm/0 うろ覚えだから動かなかったらごめんね
こんな感じにやるといけたかもしれない
Replace(対象のファイル名, "・", Chr(Code("・")))
こんな感じにやるといけたかもしれない
Replace(対象のファイル名, "・", Chr(Code("・")))
713デフォルトの名無しさん (ワッチョイ 9f49-0CXU)
2021/11/26(金) 17:57:21.05ID:e3tyzrS40 質問です
所定の形式のシートAからデータを取り出し、数値の操作を行ったあと別の形式のシートBに記入すると言うマクロと逆にシートBからシートAに記入するマクロを作りたい場合に楽をする方法はないでしょうか?
今まではA→BとB→Aで2つマクロを作ってたのですが見るところが同じなのでまとめれるように感じたのです
プログラムについて詳しくないので無茶なことを言っているかもしれませんがよろしくおねがいします
所定の形式のシートAからデータを取り出し、数値の操作を行ったあと別の形式のシートBに記入すると言うマクロと逆にシートBからシートAに記入するマクロを作りたい場合に楽をする方法はないでしょうか?
今まではA→BとB→Aで2つマクロを作ってたのですが見るところが同じなのでまとめれるように感じたのです
プログラムについて詳しくないので無茶なことを言っているかもしれませんがよろしくおねがいします
714デフォルトの名無しさん (ワッチョイ ff8e-/YRy)
2021/11/26(金) 18:18:33.57ID:6S+lbrca0 またRuby馬鹿か
715デフォルトの名無しさん (ワッチョイ ffda-D8AZ)
2021/11/26(金) 19:32:54.64ID:y13IYOoN0 >>713
自分で考えないで他人に作らせるのが一番楽じゃないかな
自分で考えないで他人に作らせるのが一番楽じゃないかな
716デフォルトの名無しさん (ワッチョイ f768-uF9W)
2021/11/26(金) 20:39:32.12ID:Jy5iToKI0 >>713
Cを作ってそれで操作
Cを作ってそれで操作
717デフォルトの名無しさん (ワッチョイ 9f42-3yxj)
2021/11/26(金) 20:40:23.50ID:90E5eyRt0 >>715
まさに今やってるのがそれだな
まさに今やってるのがそれだな
718デフォルトの名無しさん (ワッチョイ 775f-s4eX)
2021/11/26(金) 21:24:20.33ID:wVBXN9pL0719デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/11/26(金) 21:29:44.76ID:l5KPHXyn0 もうRubyは飽きたから
VBAで書かないならせめて
今流行りのPythonとか
新たに注目されてるRustとか
いずれWebのExcelで必要になるJavascriptとか
VBAやってる人が次に進みやすい
VB.NetとかC#とかその辺で書けばいいのに
Rubyとかで書いて来るセンスないバカは
死ねばいいと思う
VBAで書かないならせめて
今流行りのPythonとか
新たに注目されてるRustとか
いずれWebのExcelで必要になるJavascriptとか
VBAやってる人が次に進みやすい
VB.NetとかC#とかその辺で書けばいいのに
Rubyとかで書いて来るセンスないバカは
死ねばいいと思う
720デフォルトの名無しさん (ワッチョイ 9f56-m/w5)
2021/11/26(金) 21:57:57.19ID:sYQtOY9h0 …落ち着けよ
721デフォルトの名無しさん (ワッチョイ f768-uF9W)
2021/11/26(金) 23:05:04.12ID:Jy5iToKI0 >719
一応マジレスする
rubyにはとんでもないキチガイがいて、そいつが嵐回っている
そのおかげでrubyは総スカン、言語に影響するレベルで貶めされるようになった
キチガイ一人で言語一個潰せたのは割とマジですごいと思う
一応マジレスする
rubyにはとんでもないキチガイがいて、そいつが嵐回っている
そのおかげでrubyは総スカン、言語に影響するレベルで貶めされるようになった
キチガイ一人で言語一個潰せたのは割とマジですごいと思う
722デフォルトの名無しさん (ワッチョイ 5701-+aRL)
2021/11/26(金) 23:29:32.65ID:YCQQxNQi0 あわしろ氏が言ってたけど、ベンダーロックインされるから、特定企業の言語は使わないほうが良いよ。
723デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/11/27(土) 07:12:17.07ID:/aLCz2Bk0724デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/11/27(土) 07:20:09.69ID:/aLCz2Bk0 あのあわしろ氏とかいうのはアホだから
今はLinuxでさえExcelと似たようなソフトがあってそれでもVBAが動くことか考慮していないのだろう
Cなんか組込系はハードによってすらコードが左右されるのに、必要なときに必要な勉強をすればいいだけなのに変な固定概念を持っててそれを人に押し付けてる
今はLinuxでさえExcelと似たようなソフトがあってそれでもVBAが動くことか考慮していないのだろう
Cなんか組込系はハードによってすらコードが左右されるのに、必要なときに必要な勉強をすればいいだけなのに変な固定概念を持っててそれを人に押し付けてる
725デフォルトの名無しさん (ドコグロ MM4f-7Kcm)
2021/11/27(土) 08:52:39.21ID:OaX0N5DnM >>713
取り出すシートと書き込むシートを引数で渡せばいいだけかと
Sub Hoge(取り出すシート As Worksheet, 書き込むシート As Worksheet)
Dim 値 As Variant
値 = 取り出すシート.Range(取り出す場所).Value
' なんかの処理
書き込むシート.Range(書き込む場所).Value = 値
End Sub
Dim SheetA As Worksheet, SheetB As Worksheet
Set SheetA = ActiveWorkbook.Worksheets("A")
Set SheetB = ActiveWorkbook.Worksheets("B")
' A ⇒ B
Hoge SheetA, SheetB
' B ⇒ A
Hoge SheetB, SheetA
取り出すシートと書き込むシートを引数で渡せばいいだけかと
Sub Hoge(取り出すシート As Worksheet, 書き込むシート As Worksheet)
Dim 値 As Variant
値 = 取り出すシート.Range(取り出す場所).Value
' なんかの処理
書き込むシート.Range(書き込む場所).Value = 値
End Sub
Dim SheetA As Worksheet, SheetB As Worksheet
Set SheetA = ActiveWorkbook.Worksheets("A")
Set SheetB = ActiveWorkbook.Worksheets("B")
' A ⇒ B
Hoge SheetA, SheetB
' B ⇒ A
Hoge SheetB, SheetA
726デフォルトの名無しさん (ゲマー MMdf-W8cC)
2021/11/29(月) 11:44:05.96ID:7iqP84qYM やっと多態性の概要が分かってきた
727713 (ドコグロ MM4f-0CXU)
2021/11/29(月) 11:52:31.66ID:mgylUf/ZM 範囲を別のところに書いたり引数指定でやればいいんですね
遅くなってしまいましたが色々なご意見ありがとうございます
遅くなってしまいましたが色々なご意見ありがとうございます
728デフォルトの名無しさん (ワッチョイ 9f56-m/w5)
2021/11/30(火) 12:14:18.10ID:i6pa9Q1E0729デフォルトの名無しさん (ワッチョイ 9f56-m/w5)
2021/11/30(火) 12:24:36.07ID:i6pa9Q1E0 ああ。CallByNameとかを使えば擬似的にできるんだ。へえ。
しかし、クラスイニシャライザと継承を普通に実装してくれれば
…くれないんだろうな、もう。
しかし、クラスイニシャライザと継承を普通に実装してくれれば
…くれないんだろうな、もう。
730デフォルトの名無しさん (ワッチョイ f723-ZQOw)
2021/11/30(火) 13:25:55.62ID:xmFPZymv0 すいません質問させてください。
特定のエラーウィンドウが出たら実行するマクロを作りたいのですが
実行条件の指定の仕方がわかりません。
具体的には「データの入力規制」のエラーメッセージタブで指定した
ウィンドウの「はい(Y)」を自動で押したのちにマクロを実行させたいです。
ご教授お願いいたします。
特定のエラーウィンドウが出たら実行するマクロを作りたいのですが
実行条件の指定の仕方がわかりません。
具体的には「データの入力規制」のエラーメッセージタブで指定した
ウィンドウの「はい(Y)」を自動で押したのちにマクロを実行させたいです。
ご教授お願いいたします。
731デフォルトの名無しさん (ワッチョイ ffb0-qo/V)
2021/11/30(火) 16:33:24.70ID:yU0uPSMf0 え、そんなことできるの!?
732デフォルトの名無しさん (ワッチョイ b7da-Si4p)
2021/11/30(火) 17:17:34.47ID:EuUrWRYz0 >>731
エラーハンドラーでできないの?
エラーハンドラーでできないの?
733デフォルトの名無しさん (ワッチョイ ffda-D8AZ)
2021/11/30(火) 18:33:56.15ID:Nxhl39nB0 できないから質問したんじゃないの?
734デフォルトの名無しさん (ワッチョイ 17ea-DTN1)
2021/11/30(火) 18:53:53.22ID:gFsrJhmJ0 730です。
vba内?で出たエラーを条件にした処理は探せたんですが、エクセルが出したエラーをトリガーにしたものが探せなくて質問させていただきました。もしあるならば知りたいなと思った次第です。
vba内?で出たエラーを条件にした処理は探せたんですが、エクセルが出したエラーをトリガーにしたものが探せなくて質問させていただきました。もしあるならば知りたいなと思った次第です。
735デフォルトの名無しさん (ワッチョイ 775f-s4eX)
2021/11/30(火) 19:41:38.94ID:C0MmFQGd0 その入力規制をVBAにしたほうが手っ取り早い
736デフォルトの名無しさん (ワッチョイ 17ea-DTN1)
2021/12/01(水) 04:06:37.80ID:RALKNP3F0 なるほど、確かにそうかもしれません。
ありがとうございました。
ありがとうございました。
737デフォルトの名無しさん (アウアウウー Sa5b-Pymr)
2021/12/01(水) 09:01:08.50ID:k/wjCDWPa Excelスレに書き込んだ後にVBAスレがあることに気付きました。
VBAでA1セルに入っている文字列を使ってA2セルに文字列を入れたいと考えています。
↓のように作ったときA1が数字だけかアルファベットだけならうまく入るんですが数字とアルファベットを組み合わせた文字列(例えば4A02とか)だと1004エラーとしてアプリケーション定義かオブジェクト定義のエラーがあると怒られてしまいます。
解決方法あるものでしょうか?
Range("A2").value = "=(1,2,3," & Range ("A1").value & ",5,6,7,8,9,""abc"",0)"
VBAでA1セルに入っている文字列を使ってA2セルに文字列を入れたいと考えています。
↓のように作ったときA1が数字だけかアルファベットだけならうまく入るんですが数字とアルファベットを組み合わせた文字列(例えば4A02とか)だと1004エラーとしてアプリケーション定義かオブジェクト定義のエラーがあると怒られてしまいます。
解決方法あるものでしょうか?
Range("A2").value = "=(1,2,3," & Range ("A1").value & ",5,6,7,8,9,""abc"",0)"
738デフォルトの名無しさん (ワッチョイ d710-DHhq)
2021/12/01(水) 09:26:46.14ID:+HkH87nC0 ありません
739デフォルトの名無しさん (ワッチョイ b7ce-HfRa)
2021/12/01(水) 09:26:59.16ID:D4hpf6JM0 >>737
数式を変えるか、セルの書式を文字列にする
Range("A2").Value = "'=(1,2,3," & Range ("A1").Value & ",5,6,7,8,9,""abc"",0)"
数式を変えるか、セルの書式を文字列にする
Range("A2").Value = "'=(1,2,3," & Range ("A1").Value & ",5,6,7,8,9,""abc"",0)"
740デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/12/01(水) 11:09:46.49ID:3lXUqEaB0 >>729
クラスのコンストラクタ自体はあるよ。引数が使えないだけで。
VBAの場合は一般的に言う継承は使えないけども移譲が使えるのでクラスで多態性を持たせる場合は
テンプレートメソッドパターンを使うのではなくストラテジーパターンを使う。
クラスのコンストラクタ自体はあるよ。引数が使えないだけで。
VBAの場合は一般的に言う継承は使えないけども移譲が使えるのでクラスで多態性を持たせる場合は
テンプレートメソッドパターンを使うのではなくストラテジーパターンを使う。
741デフォルトの名無しさん (ワッチョイ 9ff2-BhQk)
2021/12/01(水) 11:40:27.26ID:QKQZx/r30 ユーザーフォーム上でのハイパーリンクに関して教えて欲しいです。
エクセルで下記のようなデータがあり、各レコードをユーザーフォームで
表示できるようにしています。
レコード 氏名 駅 地図(URL)
1 山田 新宿 https://map.yahoo.co.jp/search?q=新宿
2 鈴木 渋谷 https://map.yahoo.co.jp/search?q=渋谷
3 木村 池袋 https://map.yahoo.co.jp/search?q=池袋
・
・
その際、「地図(URL)」のテキストボックスを使ってハイパーリンクの設定を、あるいは
「地図(URL)」のラベルを使ってリンクを開くをお教えていただけないでしょうか。
エクセルで下記のようなデータがあり、各レコードをユーザーフォームで
表示できるようにしています。
レコード 氏名 駅 地図(URL)
1 山田 新宿 https://map.yahoo.co.jp/search?q=新宿
2 鈴木 渋谷 https://map.yahoo.co.jp/search?q=渋谷
3 木村 池袋 https://map.yahoo.co.jp/search?q=池袋
・
・
その際、「地図(URL)」のテキストボックスを使ってハイパーリンクの設定を、あるいは
「地図(URL)」のラベルを使ってリンクを開くをお教えていただけないでしょうか。
742デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/12/01(水) 11:45:54.74ID:3lXUqEaB0743デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/12/01(水) 11:51:59.83ID:3lXUqEaB0 まぁその前にExcelのユーザーフォームは
スプレッドシートやグリッドビューや
HTMLでいうTableタグのようなものが無いので
擬似的に一覧を作る方法を考える方が
先だと思うけど。
スプレッドシートやグリッドビューや
HTMLでいうTableタグのようなものが無いので
擬似的に一覧を作る方法を考える方が
先だと思うけど。
744デフォルトの名無しさん (ワッチョイ 9ff2-BhQk)
2021/12/01(水) 11:57:47.33ID:QKQZx/r30 Private Sub ラベル地図_Click()
Dim a
a = 地図.Text
ユーザーフォーム.FollowHyperlinks Address:="a"
End Sub
なんとなくこんな感じなかとやってみたのですが、エラーでした。
宜しくお願いいたします。
Dim a
a = 地図.Text
ユーザーフォーム.FollowHyperlinks Address:="a"
End Sub
なんとなくこんな感じなかとやってみたのですが、エラーでした。
宜しくお願いいたします。
745デフォルトの名無しさん (スプッッ Sd3f-y/uX)
2021/12/01(水) 11:59:07.74ID:JKRXUH4pd VBAって初学者はどうやって勉強すればいいんですか?
746デフォルトの名無しさん (ゲマー MM4f-W8cC)
2021/12/01(水) 12:03:16.45ID:G1NuLHw5M747デフォルトの名無しさん (ブーイモ MMbf-DHDw)
2021/12/01(水) 12:12:34.05ID:KAm88z78M >>745
変数の定義、ループ文の書き方、条件分岐の書き方が分かれば大体の言語はなんとかなる
あとは自分が何をやりたいかによってこんな動作はできるか?あんな動作は可能か?って一つ一つ調べていけばいい
処理速度が遅いと感じ始めたら最適化とかに手を出したり、シークバーを表示することで体感速度を早めたりっていう事を覚えていけば最低限はなんとかなるんじゃない?知らんけど
変数の定義、ループ文の書き方、条件分岐の書き方が分かれば大体の言語はなんとかなる
あとは自分が何をやりたいかによってこんな動作はできるか?あんな動作は可能か?って一つ一つ調べていけばいい
処理速度が遅いと感じ始めたら最適化とかに手を出したり、シークバーを表示することで体感速度を早めたりっていう事を覚えていけば最低限はなんとかなるんじゃない?知らんけど
748デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/12/01(水) 12:23:56.22ID:3lXUqEaB0749デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/12/01(水) 12:31:06.77ID:3lXUqEaB0750デフォルトの名無しさん (ワッチョイ 9f4f-OZPX)
2021/12/01(水) 12:33:40.85ID:3lXUqEaB0 ごめん誤表記
頭×
値◯
頭×
値◯
751デフォルトの名無しさん (アウアウウー Sa5b-Pymr)
2021/12/01(水) 12:42:23.19ID:k/wjCDWPa752デフォルトの名無しさん (ワッチョイ 9ff2-BhQk)
2021/12/01(水) 13:31:12.78ID:QKQZx/r30 Range ってテキストボックス内の文字列(アドレス)指定できたでしょうか??
テキストボックスのオブジェクト名を間違ってた・・・
Private Sub ラベル地図_Click()
Dim a
a = "txt地図" ’テキストボックス(txt地図)内表示の文字列
ユーザーフォーム.FollowHyperlinks Address:=”a"
End Sub
・・・またエラーだ・・・。
「a」「”a”」ともに・・・。
.FollowHyperlinks がダメなのかなぁ。
安易に質問してすみませんでした。
勉強しなおします。
他いろいろ試してまた分からなかったら来ます。
テキストボックスのオブジェクト名を間違ってた・・・
Private Sub ラベル地図_Click()
Dim a
a = "txt地図" ’テキストボックス(txt地図)内表示の文字列
ユーザーフォーム.FollowHyperlinks Address:=”a"
End Sub
・・・またエラーだ・・・。
「a」「”a”」ともに・・・。
.FollowHyperlinks がダメなのかなぁ。
安易に質問してすみませんでした。
勉強しなおします。
他いろいろ試してまた分からなかったら来ます。
753デフォルトの名無しさん (ワッチョイ 9ff2-BhQk)
2021/12/01(水) 13:36:58.56ID:QKQZx/r30754デフォルトの名無しさん (ラクッペペ MM8f-aw+H)
2021/12/01(水) 13:40:49.74ID:RRRUPRTbM フォームオブジェクトには.FollowHyperlinksというメソッドは無いね
WorkbookかApplicationのを使うとよろし
WorkbookかApplicationのを使うとよろし
755デフォルトの名無しさん (ワッチョイ 5701-hL2Y)
2021/12/01(水) 14:39:09.38ID:8YNSD3Np0 Sub マクロ保存したまま拡張子変換()
Dim bk As Workbook
Dim f As Variant
Dim gf , hf
Dim fro As Object
MsgBox (“変換するフォルダを選択して下さい”)
Set fso = CreateObject(“Scripting.FilesystemObject”)
With Application.FileDialog(msoFileDialogFolderPicker)
.show
gf = .SelectedItems(1)
MsgBox (“保存するフォルダを選択してください。”)
FileDialog(msoFileDialogFolderPicker)
. Show
hf = . SelectedItems(1)
End with
Set = fso.GetFolder(gf).Files
For Each f in fso.GetFolder(gf).Files
If LCase(fso. GetExtensionName(f.name)) =“xlsm” Then
Application.DisplayAlerts = False
Set bk = Workbooks.Open(gf & “\” & f.Name)
bk.SaveAs gf & “\”fso.GetBasename(f.Name) & “.xlsx” , 51
bk.Close
set bk = Nothing
End if
Next
fso.MoveFile “gf & \ *.xlsm,_ “hf”
set gf = Nothing
set hf = Nothing
set fso = Nothing
MsgBox “ finished”
End sub
元のマクロデータ結果が消えるのと、フォルダ移管がうまくいきません。誰かたーすーけーてー。
Dim bk As Workbook
Dim f As Variant
Dim gf , hf
Dim fro As Object
MsgBox (“変換するフォルダを選択して下さい”)
Set fso = CreateObject(“Scripting.FilesystemObject”)
With Application.FileDialog(msoFileDialogFolderPicker)
.show
gf = .SelectedItems(1)
MsgBox (“保存するフォルダを選択してください。”)
FileDialog(msoFileDialogFolderPicker)
. Show
hf = . SelectedItems(1)
End with
Set = fso.GetFolder(gf).Files
For Each f in fso.GetFolder(gf).Files
If LCase(fso. GetExtensionName(f.name)) =“xlsm” Then
Application.DisplayAlerts = False
Set bk = Workbooks.Open(gf & “\” & f.Name)
bk.SaveAs gf & “\”fso.GetBasename(f.Name) & “.xlsx” , 51
bk.Close
set bk = Nothing
End if
Next
fso.MoveFile “gf & \ *.xlsm,_ “hf”
set gf = Nothing
set hf = Nothing
set fso = Nothing
MsgBox “ finished”
End sub
元のマクロデータ結果が消えるのと、フォルダ移管がうまくいきません。誰かたーすーけーてー。
757デフォルトの名無しさん (ラクッペペ MM8f-aw+H)
2021/12/01(水) 15:27:28.95ID:RRRUPRTbM 今日び小学生でも拡張子変更なんぞせんぞ
758デフォルトの名無しさん (ワッチョイ d710-OF20)
2021/12/01(水) 15:29:25.99ID:+HkH87nC0 へぇー
759デフォルトの名無しさん (ブーイモ MMcf-HfRa)
2021/12/01(水) 15:37:37.70ID:Jx6PEbk5M 拡張子なんてずっと前から非表示がデフォルト設定だもんな
表示してるのはIT技術者とマニアぐらい
表示してるのはIT技術者とマニアぐらい
760デフォルトの名無しさん (オイコラミネオ MM4f-6l0J)
2021/12/01(水) 17:45:16.35ID:j0FzcgCOM >>745
解説本読んだら、やりたい事 vbaでググる
解説本読んだら、やりたい事 vbaでググる
761デフォルトの名無しさん (ゲマー MM4f-W8cC)
2021/12/01(水) 17:45:55.82ID:G1NuLHw5M >>755
さっきの人もそうだけど、とりあえず変数を""で囲うのやーめーてー
さっきの人もそうだけど、とりあえず変数を""で囲うのやーめーてー
762デフォルトの名無しさん (ワッチョイ 1768-D8AZ)
2021/12/01(水) 18:55:24.01ID:mU2lRylq0763デフォルトの名無しさん (ワッチョイ b7ce-HfRa)
2021/12/01(水) 20:04:07.09ID:D4hpf6JM0 スマホ使いにそんなこと言ってもしゃーないで
764デフォルトの名無しさん (ワッチョイ 1768-D8AZ)
2021/12/01(水) 20:12:27.50ID:mU2lRylq0 PCやけど
765デフォルトの名無しさん (ラクッペペ MM8f-aw+H)
2021/12/01(水) 20:28:25.20ID:FnvfENRiM ExcelスレにはPCからアクセス出来ないからと
全部手打ちのお客さんが稀に良く来るんだよ
いつものひとって呼ばれているけど個体ではなく群体かもしれないね
全部手打ちのお客さんが稀に良く来るんだよ
いつものひとって呼ばれているけど個体ではなく群体かもしれないね
766デフォルトの名無しさん (ワッチョイ 9f42-3yxj)
2021/12/01(水) 21:12:48.54ID:s3di+kE80 なにそれ怖い
767デフォルトの名無しさん (ワッチョイ bf68-uF9W)
2021/12/01(水) 21:14:41.21ID:qDEAEYAb0 >>745
今やってる手作業を全部マクロで書いてみる
とにかくひたすら、
「入力を最低限に」
「出力を正確に」
を考えると、実用十分な面で腕が上がる
あとはオブジェクト、setなどを覚えると更に快適になるけど
まぁそこまで覚えなくてもいいことがほとんど
今やってる手作業を全部マクロで書いてみる
とにかくひたすら、
「入力を最低限に」
「出力を正確に」
を考えると、実用十分な面で腕が上がる
あとはオブジェクト、setなどを覚えると更に快適になるけど
まぁそこまで覚えなくてもいいことがほとんど
768デフォルトの名無しさん (ワッチョイ ff8e-/YRy)
2021/12/01(水) 21:25:33.13ID:fkQJutja0 「助けて」と質問を書くのは馬鹿ばっか
769デフォルトの名無しさん (ワッチョイ d710-OF20)
2021/12/01(水) 21:42:33.27ID:+HkH87nC0 タスケテ…
770デフォルトの名無しさん (ワッチョイ bf68-uF9W)
2021/12/01(水) 22:01:16.26ID:qDEAEYAb0 コロシテ…
771デフォルトの名無しさん (スフッ Sdbf-f7fV)
2021/12/01(水) 22:12:07.13ID:8hr1PHBLd オコシテ…
772デフォルトの名無しさん (ワッチョイ 5701-+BwI)
2021/12/01(水) 22:19:52.19ID:jZirIxvE0 excel vnaでパス区切りが入りません。
\マークの前に、変な文字が入ってしまいます。
a=“c:\tmp\”
が
a=“c: \tmp \”
みたいになります。
解決策をご存知の方いませんか?
\マークの前に、変な文字が入ってしまいます。
a=“c:\tmp\”
が
a=“c: \tmp \”
みたいになります。
解決策をご存知の方いませんか?
773デフォルトの名無しさん (ワッチョイ d710-OF20)
2021/12/01(水) 22:22:18.62ID:+HkH87nC0 >>772
どの時点で入るのか
どの時点で入るのか
774デフォルトの名無しさん (ワッチョイ 775f-s4eX)
2021/12/01(水) 22:22:56.56ID:juM9jQJh0 VNAじゃ無理だな
775デフォルトの名無しさん (ワッチョイ 5701-+BwI)
2021/12/01(水) 22:28:54.98ID:jZirIxvE0776デフォルトの名無しさん (ワッチョイ d710-OF20)
2021/12/01(水) 22:31:48.27ID:+HkH87nC0 >>775
実行時なのか書いてるときなのかってこと
実行時なのか書いてるときなのかってこと
777デフォルトの名無しさん (ワッチョイ 5701-+BwI)
2021/12/01(水) 22:37:04.57ID:jZirIxvE0778デフォルトの名無しさん (ワッチョイ ff2c-mgIj)
2021/12/01(水) 23:27:22.80ID:J8+WBzZ00 Ruby の文字列には、こういうメソッドがある
chomp は、文字列の末尾に改行コードがあった場合に、文字列の末尾の改行コードを削除します。
strip は、文字列の前後のホワイトスペース(空白類?)をすべて削除します
chomp は、文字列の末尾に改行コードがあった場合に、文字列の末尾の改行コードを削除します。
strip は、文字列の前後のホワイトスペース(空白類?)をすべて削除します
779デフォルトの名無しさん (ワッチョイ bf68-uF9W)
2021/12/01(水) 23:37:48.12ID:qDEAEYAb0 使用者の低下率ナンバーワンのrubyか
780デフォルトの名無しさん (ワッチョイ 9f28-/2fo)
2021/12/01(水) 23:47:40.21ID:dyETJfYa0 とりあえず、半角スペース?をRelaceしてその場は乗り切ればいいんじゃない
根本的な解決じゃないだろうけどVBAなんだからその場しのぎで十分
根本的な解決じゃないだろうけどVBAなんだからその場しのぎで十分
781デフォルトの名無しさん (ワッチョイ ff8e-/YRy)
2021/12/02(木) 02:56:08.75ID:dh8YZ99S0 >>780
Ruby馬鹿に引っ掛かる馬鹿
Ruby馬鹿に引っ掛かる馬鹿
782デフォルトの名無しさん (ワッチョイ 5701-+BwI)
2021/12/02(木) 05:50:03.53ID:TBtFTtDf0783デフォルトの名無しさん (ワッチョイ b7ce-HfRa)
2021/12/02(木) 09:23:36.17ID:QiUejsWg0 絶対別のどこかにバグがあるパターンやな
ステップ実行しながら変数の中身をチェックしてみ
ステップ実行しながら変数の中身をチェックしてみ
784デフォルトの名無しさん (ワッチョイ ffda-D8AZ)
2021/12/02(木) 15:07:50.32ID:25yj5vFO0 全角空白、CR、LF、ESC文字、TABコード、00H、のどれかに10ガバチョ
不明文字の文字コード調べればすぐわかるのになぜしないのか?
不明文字の文字コード調べればすぐわかるのになぜしないのか?
785デフォルトの名無しさん (ワッチョイ 9f56-m/w5)
2021/12/02(木) 19:13:44.99ID:Q4ipSZlu0786デフォルトの名無しさん (ブーイモ MMbf-NwPx)
2021/12/02(木) 19:16:51.76ID:YGzDOnnRM 基本を押さえれば何が出来るかとかどう調べればいいか分かるって言う話なのになんでそれオンリーで戦おうとするん
787デフォルトの名無しさん (ワッチョイ 1768-D8AZ)
2021/12/02(木) 19:34:11.48ID:vBr1OiF/0 縛りプレイ?
788デフォルトの名無しさん (ワッチョイ 9f56-m/w5)
2021/12/02(木) 20:00:04.69ID:Q4ipSZlu0 ああ、なるほど。すまんかった
789デフォルトの名無しさん (ブーイモ MMfb-E4/j)
2021/12/02(木) 20:17:25.75ID:i+BC+GFiM それがこのスレに集う人達のクォリティ
790デフォルトの名無しさん (ワッチョイ bf68-uF9W)
2021/12/02(木) 21:25:27.56ID:8cWBX7d10 知らんけどって最後につけてるからセーフ
791デフォルトの名無しさん (ワッチョイ d710-OF20)
2021/12/02(木) 22:03:16.66ID:gXiV7p3O0 知らんがな
792デフォルトの名無しさん (ワッチョイ c0e6-4ess)
2021/12/03(金) 04:54:46.81ID:a7s6mUHw0 >>775
csvがユニコードだったのではなかろうかもう解決したみたいなのでどっちでもいいけど
自分の場合は、ウェブからコピペしたセル上の文字列がユニコードなのにそれをvbaで扱おうとしたらちょっと嵌まったまあなんとかうまく処理できたけど
vbaのエディタはユニコードに対応してないそうだから困っちゃうね
csvがユニコードだったのではなかろうかもう解決したみたいなのでどっちでもいいけど
自分の場合は、ウェブからコピペしたセル上の文字列がユニコードなのにそれをvbaで扱おうとしたらちょっと嵌まったまあなんとかうまく処理できたけど
vbaのエディタはユニコードに対応してないそうだから困っちゃうね
793デフォルトの名無しさん (ワッチョイ b701-edV9)
2021/12/03(金) 05:26:40.56ID:6JzCupcO0 >>792
これ全く再現できないんだよな
っていうか質問者自身が
「\の前に文字が混入するバグ」であるとか、
原因が「a=“c:\tmp\”」や「file = wsh.specialfolder(“Desktop”) & “\test.csv”」にあると勝手に判断してて、
それがミスリードになってる気がする。
余計な文字が入った個所が偶々\マークの近くだっただけだったり、
実は後々変数を弄っていてそこで混入している可能性もある。
質問者は素直にコードを一部始終書いて、
「ここでこうなるようにしたい」とそれだけ書けばいいのにと常々思う。
これ全く再現できないんだよな
っていうか質問者自身が
「\の前に文字が混入するバグ」であるとか、
原因が「a=“c:\tmp\”」や「file = wsh.specialfolder(“Desktop”) & “\test.csv”」にあると勝手に判断してて、
それがミスリードになってる気がする。
余計な文字が入った個所が偶々\マークの近くだっただけだったり、
実は後々変数を弄っていてそこで混入している可能性もある。
質問者は素直にコードを一部始終書いて、
「ここでこうなるようにしたい」とそれだけ書けばいいのにと常々思う。
794デフォルトの名無しさん (ワッチョイ 3e68-dJk+)
2021/12/03(金) 07:05:37.24ID:8nMwCozS0 >「ここでこうなるようにしたい」とそれだけ書けばいいのにと常々思う。
禿げ上がるほど同意
禿げ上がるほど同意
795デフォルトの名無しさん (ワッチョイ bcfd-4ssN)
2021/12/03(金) 08:32:26.43ID:5OfA8a2a0 また髪の話してる(´・ω・`)
796デフォルトの名無しさん (アウアウウー Sab5-XqrI)
2021/12/03(金) 11:57:05.48ID:9DdfYS8Sa IE操作をしてとあるページまで辿り着いて、そこのBASIC認証のポップアップにユーザー名とパスワードを入力した後、OKをクリックする、ということをやりたいです
詳しくないのですが、普通にリンクを辿っていく感じではなく、div要素にJavaScriptが埋め込まれていて、VBAでIdやClassを指定してクリックしてもページ遷移しません
BASIC認証を求められるページの先にあるデータが目的なのですが、そこへ直接行くURLは分かっていても、当然ながら先にログインしてないとデータが閲覧できないようになっています
直接URL先へ飛んでもBASIC認証のポップアップが出ないため、初めから順にページ遷移していって、BASIC認証を求められる特定の場所まで辿り着きたいのです
そのBASIC認証を求められるページのURLが分からないので、遠回りでもそういう方法しか自分には思い浮かびません
URLにユーザー名とパスワードを埋め込む方法はもうできないそうなので、どうにかJavaScriptによるページ遷移をVBAによるIE操作でやりたいです
必要な情報がなにかも分からないのですが、具体的にどうすればdiv要素に埋め込まれたJavaScriptを動かせますか?
詳しくないのですが、普通にリンクを辿っていく感じではなく、div要素にJavaScriptが埋め込まれていて、VBAでIdやClassを指定してクリックしてもページ遷移しません
BASIC認証を求められるページの先にあるデータが目的なのですが、そこへ直接行くURLは分かっていても、当然ながら先にログインしてないとデータが閲覧できないようになっています
直接URL先へ飛んでもBASIC認証のポップアップが出ないため、初めから順にページ遷移していって、BASIC認証を求められる特定の場所まで辿り着きたいのです
そのBASIC認証を求められるページのURLが分からないので、遠回りでもそういう方法しか自分には思い浮かびません
URLにユーザー名とパスワードを埋め込む方法はもうできないそうなので、どうにかJavaScriptによるページ遷移をVBAによるIE操作でやりたいです
必要な情報がなにかも分からないのですが、具体的にどうすればdiv要素に埋め込まれたJavaScriptを動かせますか?
797デフォルトの名無しさん (ワッチョイ f64f-HF+D)
2021/12/03(金) 12:53:21.83ID:zxa5p7EY0 >>796
認証している画面(ログイン画面)は分かりますか?
そもそもですが、一度ログインした情報をクライアントサイドで持ち回っているとは限りませんよ。
Webにはサーバー側でセッションというものがあり、セキュリティ上の関係で、ログイン画面で打ち込んだ、あるいはログイン出来た、という情報をそれで持ち回る手段も一般的に使われます。
クッキーやクエリストリングで持ち回る場合も有りますが、一般公開されているサイトであれば望み薄でしょう。
直接入るようにするのであれば、そのサイトも社内環境のような場所にあるのであれば、そういう口を作って貰うのが一番手っ取り早いでしょう。
そんなに簡単に入れるのなら内部の情報抜きたい放題ですよね?
だから認証というものがある訳です。
認証している画面(ログイン画面)は分かりますか?
そもそもですが、一度ログインした情報をクライアントサイドで持ち回っているとは限りませんよ。
Webにはサーバー側でセッションというものがあり、セキュリティ上の関係で、ログイン画面で打ち込んだ、あるいはログイン出来た、という情報をそれで持ち回る手段も一般的に使われます。
クッキーやクエリストリングで持ち回る場合も有りますが、一般公開されているサイトであれば望み薄でしょう。
直接入るようにするのであれば、そのサイトも社内環境のような場所にあるのであれば、そういう口を作って貰うのが一番手っ取り早いでしょう。
そんなに簡単に入れるのなら内部の情報抜きたい放題ですよね?
だから認証というものがある訳です。
798デフォルトの名無しさん (ワッチョイ acce-cP/Y)
2021/12/03(金) 13:12:32.34ID:ssU1VLQS0 >>796
鯖によって使えるかどうか変わるけど、URLにIDとパスワードを埋め込んで認証させてしまうという方法がある
あとJavascriptでのページ遷移もURLにスクリプトを埋め込む方法で飛べてしまうケースがけっこうある
これ以上は具体的にそこのサイトを教えてもらわないと、何が使えるとかアドバイスは難しい
鯖によって使えるかどうか変わるけど、URLにIDとパスワードを埋め込んで認証させてしまうという方法がある
あとJavascriptでのページ遷移もURLにスクリプトを埋め込む方法で飛べてしまうケースがけっこうある
これ以上は具体的にそこのサイトを教えてもらわないと、何が使えるとかアドバイスは難しい
799デフォルトの名無しさん (ワッチョイ acce-cP/Y)
2021/12/03(金) 13:19:32.02ID:ssU1VLQS0 >>796
URLなんてパケットキャプチャすればすぐわかる
ただしURLにワンタイムキーが含まれてる場合はURLがわかってても直接飛ぶのは不可能
ポップアップウィンドウに文字列を入力する最終手段としてSendKeysというのもあるけど、安定動作させるのが難しすぎるのであまりおすすめしない
URLなんてパケットキャプチャすればすぐわかる
ただしURLにワンタイムキーが含まれてる場合はURLがわかってても直接飛ぶのは不可能
ポップアップウィンドウに文字列を入力する最終手段としてSendKeysというのもあるけど、安定動作させるのが難しすぎるのであまりおすすめしない
800デフォルトの名無しさん (ワッチョイ 2cda-Z6Z9)
2021/12/03(金) 13:54:04.52ID:flES33au0 >>796
他のアプリ操作してネットワークにアクセスするのをVBAで作るのはやめなされ
他のアプリ操作してネットワークにアクセスするのをVBAで作るのはやめなされ
801デフォルトの名無しさん (アウアウウー Sab5-XqrI)
2021/12/03(金) 14:27:04.84ID:SW8VES6Na >>797
詳細は分からないのですが、一度ログインした後ならば、その先のURLへ直接飛んでも閲覧できるんです
なので、とりあえず一度でもどうにかログインさえすれば、なんとかなるかなと思っています
>>798
外部サイトではないので直接見ていただくことはできないのです
URLに埋め込む方法を試しては見たのですが上手くいきませんでした
欲しいデータのある場所は、URLにパラメータを渡してなんとか飛べることはできたので、BASIC認証が求められるページもそうやって行けるのが一番なんですが、ソースを見ても分からなくてお手上げ状態です
BASIC認証を呼び出してるであろうそれっぽい場所は見つけたんですが、そこからどうも上手くいかなくて・・・
>>799
なるほど
パケットキャプチャ調べてみます
とにかくポップアップさえ表示できれば、最悪SendKeysでEnterしてやろうと思ってました
>>800
あまり良くないであろうことは分かってるんですが、できればすでにあるVBAコードの中に組み込みたいんです・・・
詳細は分からないのですが、一度ログインした後ならば、その先のURLへ直接飛んでも閲覧できるんです
なので、とりあえず一度でもどうにかログインさえすれば、なんとかなるかなと思っています
>>798
外部サイトではないので直接見ていただくことはできないのです
URLに埋め込む方法を試しては見たのですが上手くいきませんでした
欲しいデータのある場所は、URLにパラメータを渡してなんとか飛べることはできたので、BASIC認証が求められるページもそうやって行けるのが一番なんですが、ソースを見ても分からなくてお手上げ状態です
BASIC認証を呼び出してるであろうそれっぽい場所は見つけたんですが、そこからどうも上手くいかなくて・・・
>>799
なるほど
パケットキャプチャ調べてみます
とにかくポップアップさえ表示できれば、最悪SendKeysでEnterしてやろうと思ってました
>>800
あまり良くないであろうことは分かってるんですが、できればすでにあるVBAコードの中に組み込みたいんです・・・
802デフォルトの名無しさん (ラクッペペ MM34-QcgA)
2021/12/03(金) 14:43:51.51ID:0Pem6RYZM Authorizationヘッダを追加する方法は試したの?
803デフォルトの名無しさん (アウアウウー Sab5-XqrI)
2021/12/03(金) 15:07:12.35ID:HI4Cro1ra804デフォルトの名無しさん (ワッチョイ f64f-HF+D)
2021/12/03(金) 15:24:32.70ID:zxa5p7EY0805デフォルトの名無しさん (アウアウウー Sab5-XqrI)
2021/12/03(金) 15:52:30.54ID:vV4ZoTXpa >>804
IdやClassNameでは.Clickでも駄目でした
ページ遷移という書き方をしてしまいましたが、正確にはdiv要素がstyleで画像になっていて、それをマウスクリックするとそのページ内でメニューがポップアップします
そのメニューにも同様にボタン画像があって、いくつかクリックして潜っていった先の一つをクリックすると、今度はBASIC認証のウィンドウが出てきます
IdやClassNameでは.Clickでも駄目でした
ページ遷移という書き方をしてしまいましたが、正確にはdiv要素がstyleで画像になっていて、それをマウスクリックするとそのページ内でメニューがポップアップします
そのメニューにも同様にボタン画像があって、いくつかクリックして潜っていった先の一つをクリックすると、今度はBASIC認証のウィンドウが出てきます
806デフォルトの名無しさん (アウアウウー Sa3a-j3Ye)
2021/12/03(金) 18:05:37.11ID:n8IJVD8na web側で認証しなくていいように直せよ
807デフォルトの名無しさん (ワッチョイ d02c-lkzs)
2021/12/03(金) 20:39:08.05ID:XIVj35HM0 >>805
で書いてある通りに、やっていけば?
Ruby on Rails の統合テストのCapybara は、そういう感じでやっていく
漏れは、Ruby, Selenium Webdriver でブラウザの自動操作して、
yahoo にログインしている
Seleniumでは、要素が出現するまで待ってくれるので、操作しやすい。
この機能がない場合は、適度にsleep して待てば良い
で書いてある通りに、やっていけば?
Ruby on Rails の統合テストのCapybara は、そういう感じでやっていく
漏れは、Ruby, Selenium Webdriver でブラウザの自動操作して、
yahoo にログインしている
Seleniumでは、要素が出現するまで待ってくれるので、操作しやすい。
この機能がない場合は、適度にsleep して待てば良い
808デフォルトの名無しさん (ワッチョイ 3e68-dJk+)
2021/12/03(金) 21:16:21.68ID:8nMwCozS0809デフォルトの名無しさん (ワッチョイ 0a8e-9fbA)
2021/12/03(金) 22:10:47.69ID:j3L0Seq20 またRuby馬鹿の釣りに引っ掛かった馬鹿ども
810デフォルトの名無しさん (ブーイモ MM5e-znFK)
2021/12/03(金) 22:14:21.75ID:SLFpaNjyM と、馬鹿が申しております。
811デフォルトの名無しさん (ワッチョイ b701-edV9)
2021/12/03(金) 23:03:37.81ID:6JzCupcO0 >>796
Basic認証の情報はホスト名毎に自動的に送信されるはずだから、
事前に認証後に遷移するURLへAuthorizationヘッダに認証情報を追加した状態でNavigateメソッドを実行しておけばどうかな。
そのあと通常通り辿ってBasic認証が求められるページに行ったらどうなる?
Basic認証の情報はホスト名毎に自動的に送信されるはずだから、
事前に認証後に遷移するURLへAuthorizationヘッダに認証情報を追加した状態でNavigateメソッドを実行しておけばどうかな。
そのあと通常通り辿ってBasic認証が求められるページに行ったらどうなる?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- 【山形】クマ駆除で誤射した猟友会隊員に町が1663万円請求へ...弾当たり男性大けが2023年 小国町 [nita★]
- トランプ、G7に代わるcore 5を発表 [805596214]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 木曜日のんなっしょい❗(・o・🍬)仕放題スレ🏡
- 【悲報】日本共産党、ツイッター速報にブチギレ法的措置WWWWWWWWWWWWWWWWWWWWWWWWWWWW [935793931]
- 【悲報】麻生太郎さん、オムツをしていた。晋さん…ここにいたんだね… [731544683]
- 【悲報】高市早苗、被災民に対し「自分の命くらいは自分で守ってくださいね」と切り捨てし大炎上 [339712612]
