セルに部分文字列が含まれている場合は、セル値を変更します
質問
私は列に数百社のリストを持っています。異なる方法で入力された繰り返し会社があります。(すなわち「Nike」対「Nike Inc」)
Excelでマクロを列をループさせるようにプログラムしようとしていますが、「Nike」を検索すると、そのセル内のものを一貫した会社名に置き換えることができます(つまり、 "Nike、Inc。")。多くの企業を検索することです。
私は助けに感謝します!
解決
これは Nike と Ford
の例です。Sub Company()
ary = Array("Nike", "Ford")
Dim v As String, i As Long, j As Long
For i = LBound(ary) To UBound(ary)
v = ary(i)
For j = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If InStr(1, Cells(j, "A"), v) > 0 Then
Cells(j, "A") = v
End If
Next j
Next i
End Sub
.
必要に応じて ary()を展開します。
他のヒント
dim configSht as WorkSheet, compArray() as String, x as Integer
set configSht = thisWorkbook.Sheets("Config")'This identifies your config sheet
redim compArray(0)
for x = 1 to Cells(Rows.Count, "A").End(xlUp).Row
if Cells(x,"A")<>"" then
compArray(UBound(compArray) = Cells(Rows.Count, "A")
End IF
reDim Preserve compArray(UBound(compArray)+1)
Next
.
それは非常に基本的な考えです。それから、@ Garyの学生ソリューションのcompArray
の代わりにary
を使用します。比較配列には、コードを実行した後にセルに読み取る情報が含まれます。だからあなたが「Nike Inc.」を望んでいるならば"Nike"のすべてのインスタンスで "Nike Inc."あなたの設定になります。
所属していません StackOverflow