!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part66
https://mevius.5ch.net/test/read.cgi/tech/1589085825/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
Excel VBA 質問スレ Part67
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 33da-3+hg)
2020/06/26(金) 02:01:29.56ID:uDfmpksE02デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/26(金) 07:58:40.55ID:PIx3bjtD0 >>1
おちゅ
おちゅ
3デフォルトの名無しさん (ワッチョイ 8fba-x+MM)
2020/06/26(金) 19:07:55.93ID:ZjxMZdyJ0 VBAでgrep検索を使いたいんだが教えてくれ。
https://website-note.net/vba/excel-grep-macro/
上のサイトのコードをコピペして動くまではいいんだけど、もう一つ条件を加えて
'キーワードを含むセルの情報をアウトプット時にキーワードの右のセルをアウトプットさせるようにしたい。
そこでOptionButtonを2つ作ってOpB1がtrueのときに普通に動いて、falseのときに
キーワードの右をアウトプットさせるコードを書いたんだがうまくいかない。
ifもselectcaseも試したんだけどだれか教えてくれ、VBA初心者で頭かかえてる。
つくったもの↓
'キーワードを含むセルの内容
If OptionButton1.value =then
省略 .Cells(lcnt, 7).Value = rFoundCell.Value
else
省略 .Cells(lcnt, 7).Value = rFoundCell.offset(0,1).Value
https://website-note.net/vba/excel-grep-macro/
上のサイトのコードをコピペして動くまではいいんだけど、もう一つ条件を加えて
'キーワードを含むセルの情報をアウトプット時にキーワードの右のセルをアウトプットさせるようにしたい。
そこでOptionButtonを2つ作ってOpB1がtrueのときに普通に動いて、falseのときに
キーワードの右をアウトプットさせるコードを書いたんだがうまくいかない。
ifもselectcaseも試したんだけどだれか教えてくれ、VBA初心者で頭かかえてる。
つくったもの↓
'キーワードを含むセルの内容
If OptionButton1.value =then
省略 .Cells(lcnt, 7).Value = rFoundCell.Value
else
省略 .Cells(lcnt, 7).Value = rFoundCell.offset(0,1).Value
4デフォルトの名無しさん (ワッチョイ 8f01-Zl/h)
2020/06/26(金) 20:08:11.16ID:SBXE4EMs0 ・OpB1って何ですか?丁寧に書いて
・せめてoutputCellInfoのソースは全部書いて
・=thenがガチなのかタイポなのか分からんから直打ちじゃなくてコピペして
・せめてoutputCellInfoのソースは全部書いて
・=thenがガチなのかタイポなのか分からんから直打ちじゃなくてコピペして
5デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/26(金) 20:20:30.07ID:PIx3bjtD0 日本語訳:
上のサイトのコードだと
キーワードを含むセルの値が、G列に出力されます。
これを以下のように変更したいです
キーワードを含むセルを検索したあと、このセルの値だけでなく、このセルのすぐ右側のセルの値をH列に出力したいです。
できたら、オプションボタンを新設して、右側セルの値を出力するかしないかを選択できるようにしたいです
面倒だから後はお前らにまかせた
上のサイトのコードだと
キーワードを含むセルの値が、G列に出力されます。
これを以下のように変更したいです
キーワードを含むセルを検索したあと、このセルの値だけでなく、このセルのすぐ右側のセルの値をH列に出力したいです。
できたら、オプションボタンを新設して、右側セルの値を出力するかしないかを選択できるようにしたいです
面倒だから後はお前らにまかせた
6デフォルトの名無しさん (ワッチョイ 8fba-x+MM)
2020/06/26(金) 20:26:55.66ID:ZjxMZdyJ0 >>4すみません、コードはります
Private Sub outputCellInfo(ByVal sTmpPath As String, ByVal sFilePath As String, ByVal sTmpSheetName As String, _
ByVal rFoundCell As Range)
Dim OptionButton1 As Boolean
If OptionButton1 = True Then
With ThisWorkbook.Sheets(STR_GREP_SHEET_NAME)
.Cells(lcnt, 2).Value = lcnt - 7
.Cells(lcnt, 3).Value = sFilePath
.Cells(lcnt, 4).Value = sTmpPath
.Cells(lcnt, 5).Value = sTmpSheetName
.Cells(lcnt, 6).Value = convertRange(rFoundCell.Column) & rFoundCell.Row
.Cells(lcnt, 7).Value = rFoundCell.Value
End With
lcnt = lcnt + 1
Else:
With ThisWorkbook.Sheets(STR_GREP_SHEET_NAME)
.Cells(lcnt, 2).Value = lcnt - 7
.Cells(lcnt, 3).Value = sFilePath
.Cells(lcnt, 4).Value = sTmpPath
.Cells(lcnt, 5).Value = sTmpSheetName
.Cells(lcnt, 6).Value = convertRange(rFoundCell.Column) & rFoundCell.Row
.Cells(lcnt, 7).Value = rFoundCell.Offset(0, 1).Value
End With
lcnt = lcnt + 1
End If
End Sub
Private Sub outputCellInfo(ByVal sTmpPath As String, ByVal sFilePath As String, ByVal sTmpSheetName As String, _
ByVal rFoundCell As Range)
Dim OptionButton1 As Boolean
If OptionButton1 = True Then
With ThisWorkbook.Sheets(STR_GREP_SHEET_NAME)
.Cells(lcnt, 2).Value = lcnt - 7
.Cells(lcnt, 3).Value = sFilePath
.Cells(lcnt, 4).Value = sTmpPath
.Cells(lcnt, 5).Value = sTmpSheetName
.Cells(lcnt, 6).Value = convertRange(rFoundCell.Column) & rFoundCell.Row
.Cells(lcnt, 7).Value = rFoundCell.Value
End With
lcnt = lcnt + 1
Else:
With ThisWorkbook.Sheets(STR_GREP_SHEET_NAME)
.Cells(lcnt, 2).Value = lcnt - 7
.Cells(lcnt, 3).Value = sFilePath
.Cells(lcnt, 4).Value = sTmpPath
.Cells(lcnt, 5).Value = sTmpSheetName
.Cells(lcnt, 6).Value = convertRange(rFoundCell.Column) & rFoundCell.Row
.Cells(lcnt, 7).Value = rFoundCell.Offset(0, 1).Value
End With
lcnt = lcnt + 1
End If
End Sub
7デフォルトの名無しさん (アウアウウー Sad3-fXbV)
2020/06/26(金) 20:40:26.18ID:nEhmFRZ4a なんでElseに:ついてんだ?
8デフォルトの名無しさん (アウアウウー Sad3-d3ZO)
2020/06/26(金) 20:40:29.37ID:1oZqQJala 張り付けたオプションボタンと定義したのは別物じゃね
9デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/26(金) 20:50:43.26ID:PIx3bjtD0 つか、そもそもそのサイトのコードって正確に動く?
キーワードを含むセルを網羅しないんだけど
nothingになるRangeを比較対象に置いてるあたりがあれだ
キーワードを含むセルを網羅しないんだけど
nothingになるRangeを比較対象に置いてるあたりがあれだ
10デフォルトの名無しさん (ワッチョイ 8fba-x+MM)
2020/06/26(金) 21:05:20.01ID:ZjxMZdyJ011デフォルトの名無しさん (ワッチョイ 8f01-Zl/h)
2020/06/26(金) 23:24:58.46ID:SBXE4EMs0 >>6
ぱっと見で分かるのは、OptionButton1が再定義されてて目的の値を参照してない事
Dim OptionButton1 を消して、>>3で自分で書いたようにOptionButton1.valueを評価してみて
あと、オブジェクト名にButtonって入ってるからコントロールだと思うけど、
もしコマンドボタンならこの用途でValueプロパティは使えないから、チェックボックスにしよう
解説サイトのソースも修正
grepExcelSheetメソッド
Loop While rTmpFoundCell <> rFoundFirstCell
↓
Loop While rTmpFoundCell.Address <> rFoundFirstCell.Address
openExcelFilesメソッド
sTmpPath = Dir(sFilePath & "*.xls")
↓
sTmpPath = Dir(sFilePath & "*.xls?")
それに伴って Do While sTmpPath <> "" 内の文を
If Not sTmpPath Like "*." & ThisWorkbook.Name Then 〜 End If
で括る
細かいこと言うと、Blean型を判定するときにリテラルと比較(= True や = False)はカッコ悪いから止めた方がいい
解説サイトではやってるけどね
ぱっと見で分かるのは、OptionButton1が再定義されてて目的の値を参照してない事
Dim OptionButton1 を消して、>>3で自分で書いたようにOptionButton1.valueを評価してみて
あと、オブジェクト名にButtonって入ってるからコントロールだと思うけど、
もしコマンドボタンならこの用途でValueプロパティは使えないから、チェックボックスにしよう
解説サイトのソースも修正
grepExcelSheetメソッド
Loop While rTmpFoundCell <> rFoundFirstCell
↓
Loop While rTmpFoundCell.Address <> rFoundFirstCell.Address
openExcelFilesメソッド
sTmpPath = Dir(sFilePath & "*.xls")
↓
sTmpPath = Dir(sFilePath & "*.xls?")
それに伴って Do While sTmpPath <> "" 内の文を
If Not sTmpPath Like "*." & ThisWorkbook.Name Then 〜 End If
で括る
細かいこと言うと、Blean型を判定するときにリテラルと比較(= True や = False)はカッコ悪いから止めた方がいい
解説サイトではやってるけどね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市内閣の若い世代の支持率は92.4% FNN世論調査★4 [♪♪♪★]
- 【MLB】村上宗隆の『小型契約』は吉田正尚の影響か 市場が思いのほか停滞 「NPB打者に懐疑的。吉田が高すぎた」 [冬月記者★]
- ゼレンスキー氏「高市総理に感謝」 9000億円超追加支援に 「国際秩序に貢献」 (動画あり) [ごまカンパチ★]
- 「ONE PIECE」尾田栄一郎、原作は「ここからが大変」「僕は歳をとってしまったので最高速度で来年もズッシリドッシリ航海します」 [muffin★]
- 【徳島】「体調が悪くなったら自己責任」と同意書求める 最長1年2か月期限切れ 生活保護受給者に賞味期限切れ食品を支給 徳島市 ★3 [ぐれ★]
- マツコ、令和の“おせち離れ”に理解「辞める人が出てくるのもわかるよね」「子供も食わなかったり」 [muffin★]
- 作家『男女平等パンチ』から女を制裁しようとする悪意を感じる。フェミニズムとは性差別をなくす思想。つまり女を殴るなという思想」 [932029429]
- もうすぐメリクリ学園アイドルマスター学マススレ
- おかんの言うこと
- 🖐( -᷄ὢ)プライベートではサインしないんで……
- 口がクサいと笑うのはキミがいい〜でもキモいねって嬉しそうなのも〜
- 米は余っていないし 値下がりもしない
