셀이 부분 문자열을 포함하면 셀 값을 변경하십시오.
문제
나는 수백 개의 회사 목록을 열에 있습니다.다르게 입력 된 반복 회사가 있습니다.(I.E. "Nike"vs "Nike Inc")
"나이키"를 검색하기 위해 루프를 통해 루프를 루프로 프로그래밍하려고하고 있으며, 발견 된 경우 해당 셀에있는 일관된 회사 이름 (즉, "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
.
그것은 매우 기본적인 아이디어입니다.그런 다음 @ 게리의 학생 솔루션의 compArray
대신 ary
를 사용할 수 있습니다.비교 배열에는 코드를 실행 한 후 셀이 읽을 수있는 정보가 포함됩니다.그래서 당신이 "Nike Inc."를 원한다면"Nike"의 모든 인스턴스에 대해 "Nike Inc."구성에있을 것입니다.
제휴하지 않습니다 StackOverflow