2013-08-27 4 views
1

Excel 스프레드 시트에서 데이터를 정리하는 방법에 대한 제안을 누군가가 도와 줄 수 있는지 궁금합니다.데이터 삭제를위한 Excel 매크로

나는 매우 긴 목록을 가지고 있습니다. 현재, 데이터 목록 (관심있는 약물의 이름을 얻기 위해)을 Excel에 복사하고 있습니다. 그러나 문제는 데이터의 각 행에 내가 필요없는 관계없는 정보가 있다는 것입니다. 예를 들어

:

Fluoride Updated 7/10/13 
Acetaminophen Updated 8/10/13 

내가 나머지를 (위의 예에있는 불소 및 아세트 아미노펜) 첫 번째 텍스트를 유지하는 매크로를 만들 제거하고 싶습니다.

제안 사항? 지금까지 "찾기"와 "모두 바꾸기"방법을 시도했지만, 각 약물마다 날짜가 다르므로 실제로 불가능합니다.

도움을 주시면 감사하겠습니다.

감사합니다.

+1

약물 이름에 공백이 없으면'Split (drugName, ")"을 사용하고 결과 배열의 첫 번째 요소 만 유지하면됩니다. –

답변

1

의 첫 번째 열에 것으로 가정

분리 문자로 공간 컬럼에 텍스트를 수행하는 매크로를 만들 것 매크로를 사용하는 것에 대해 최소한의 유연성은 수식을 사용하여 '코너 사례'에 대한 유연성을 유지할 수 있습니다. 예를 들면 : 경우에

=LEFT(A1,FIND(" ",A1)) 

모든 약물 이름에 공백이 포함되지 않은 경우 (? 가능성), 혹은 더 유망한 :

모든 항목이 "업데이트"를 포함
=LEFT(A1,FIND("Updated",A1)-2) 

.

결과를 정렬하면 구문 분석이 적합하지 않은 부분이 표시되고 추가 조정이 필요합니다.

+0

완벽한입니다. 고맙습니다! – user2722253

+0

+1 수식 사용의 경우 –

0

가장 쉬운 방법이 데이터가 당신에 보인다 때문에 Sheet1의

Dim shtWorking As Worksheet 
Set shtWorking = Worksheets("Sheet1") 
shtWorking.Columns(1).TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _ 
    TextQualifier:=xlNone, ConsecutiveDelimiter:=True, Tab:=False, Semicolon _ 
    :=False, Comma:=False, Space:=True, Other:=False, FieldInfo:=Array(_ 
    Array(1, 2), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True 
+0

답변 해 주셔서 감사합니다. – user2722253