2013-02-15 5 views
0

특정 열을 수정해야하는 Excel 스프레드 시트가 있습니다.Excel에서 특정 열을 바꿀 Excel VBA 코드

1 단계 찾기 열 이름

2 단계 표시이 열의 설치된 모든 행

단계 3. 다른 열이 "이"경우 주로 찾아 교체하거나 (특정 작업을 진행합니다 그 다음에 저의 칼럼을 수정하십시오.

나는 지정된 최초의 2 단계를 좋아하고 나는 비슷한 일을 VBA 코드가

3 단계를 진행하기 위해 쉽게 코드를 수정하는 나에게 공간을 떠날 것이다. 특정 열 이름을 검색하면 채워진 모든 행을 표시합니다. 인터넷에서 발견되는 다른 코드를 복사하여 주 코드에 쉽게 붙여 넣을 수는 없습니다. 이 칼럼 인터넷에서 발견 매크로의 대부분

Sub FindAddressColumn() 
Dim rngAddress As Range 
Set rngAddress = Range("A1:ZZ1").Find("Address") 
If rngAddress Is Nothing Then 
    MsgBox "Address column was not found." 
    Exit Sub 
End If 
Range(rngAddress, rngAddress.End(xlDown)).Select 
End Sub 

의 열 명칭 및 마크 모든 레코드를 찾습니다

MACRO 열이 지정했습니다. 내가 메인 코드에 추가 할 코드의

예 :

Sub GOOD_WORKS_Find_Replace_Commas_in_Emails() 
Sheets("Data").Activate 
Dim i As String 
Dim k As String 
i = "," 
k = "." 
Columns("R").Replace What:=i, Replacement:=k, LookAt:=xlPart, MatchCase:=False 
Sheets("Automation").Activate 
MsgBox "Removing commas in emails - Done!" 
End Sub 

나는 내가 무엇을 그리워하는 것은 ... 이미 표시된 열 행에 대해 "말"할 코드 믿습니다. 여기에서는 인터넷에있는 코드의 일부만 붙여 넣습니다.

+0

당신이 일치하는 모든 원하는 열 세포, 또는 특정 처리해야합니까? 예 : 'this'가있는 5 개의 셀이있는 열이 있지만 다른 기준에 따라 5 개가 아닌 3 개만 바꾸고 싶습니까? –

+0

대부분의 경우이 작업은 열의 모든 셀에 적용됩니다. 유일한 차이점은 주석이라는 열에 채워진 값을 살펴보고 주석에 따라 선택한 셀을 수정하는 매크로가 필요하다는 것입니다. 하지만 같은 규칙이 대부분의 경우 선택한 열의 모든 셀에 적용됩니다. – mgunia

답변

2

은이 코드는 당신이 원하는 일을 할 것입니다 생각 :

Sub ColumnReplace() 

Dim TargetColumn As Range 
Dim Header As String 
Dim SearchFor As String 
Dim ReplaceTo As String 

Header = "ccc" 
SearchFor = "111" 
ReplaceTo = "99999" 

Set TargetColumn = ThisWorkbook.ActiveSheet.Range("1:1").Find(Header, LookIn:=xlValues, LookAt:=xlPart, MatchCase:=False) 
Set TargetColumn = Cells(1, TargetColumn.Column).EntireColumn 
TargetColumn.Replace What:=SearchFor, Replacement:=ReplaceTo, LookAt:=xlPart, _ 
     SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ 
     ReplaceFormat:=False 

End Sub 

당신이 원하는대로 교체/검색 통합 문서/시트 이름뿐만 아니라 문자열을 채택한다.

샘플 파일 : https://www.dropbox.com/s/s7fghhlsmydjaf6/EntireColumnReplace.xlsm

+0

샘플 파일이 추가되었습니다. –

+0

피터에게 감사드립니다. 찾기 및 바꾸기 작업으로 유망 해 보인다. 그러나 countif를이 코드에 구현하려면 어떤 수정이 필요합니까? – mgunia

+0

위의 코드를 가정하면 :'k = Application.WorksheetFunction.CountIf (TargetColumn, ReplaceTo)'그러나 ** ** 질문입니다. 동일한 링크를 사용하여 샘플 파일을 사용할 수 있습니다. –