VBScriptで特定文字列がある行に色を塗りたい。

Writer: admin Type: fidel Date: 2019-01-24 00:00
VBScriptで特定文字列がある行に色を塗りたい。先日、こちらで下記スクリプトを提供いただき、とても有効なツールとして利用させていただいていますが、https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q102006998...一点、追加で「文字列"ABC"がある行で且つC列に"BBB"がある場合」としたいのですが、このスクリプトをどのように改修したらいいでしょうか。共感した0###前回の回答を手直ししました。「ABC」を「部分一致」(そのセルの中に「ABC」という文字が含まれていれば、「存在」)で検索して、その「ABC」のある行の列「C」が「BBB」なら、その行を「黄色」にしています。Option ExplicitDim ad, bk, c, e, ex, f, i, s, so, waSet so = CreateObject("Scripting.FileSystemObject")Set ex = CreateObject("Excel.Application")ex.Application.DisplayAlerts = Falseex.Visible = FalseSet wa = WScript.ArgumentsFor i = 0 to wa.Count - 1e = so.GetExtensionName(wa(i))If e = "xls" or e = "xlsx" or e = "xlsm" ThenSet bk = ex.Workbooks.Open(wa(i))For Each s In bk.WorksheetsSet f = s.Cells.Find("ABC",,, 2)If Not (f is Nothing) Thenad = f.AddressDoSet f = s.Cells.FindNext(f)If s.Cells(f.Row, "C").Value = "BBB" Thenc = s.Cells(f.Row, s.Columns.Count).End(-4159).Columns.Range(s.Cells(f.Row, 1), s.Cells(f.Row, c)).Interior.ColorIndex = 6End IfLoop While Not f is Nothing and f.Address <> adEnd IfNextbk.Savebk.CloseSet bk = NothingEnd IfNextex.QuitSet ex = NothingSet wa = NothingSet so = NothingMsgBox("Finished!")ナイス0
###ありがとうございました。お蔭様で更に効率化できました!

 

TAG