2011-10-18 4 views

답변

5

는 열 A 빈 열에

  1. 고토에서 공백을 제거한다고 가정하자
  2. 은 B1에 =TRIM(A1)를 입력 (B라고 할 수 있습니다).
  3. 그런 다음 클립 보드에 열 B 복사
  4. B.
  5. 모든 행으로 아래쪽으로이 수식을 입력하고 다시 열 A. 칼럼 B의 값 (안 식)를 복사하기 "페이스트"를 사용
귀하의 공백 제거 요청에
+1

Office 2011에서는 선택하여 붙여 넣기를 수행하고 값을 붙여 넣기를 선택해야합니다. 약간 다른 방법, 동일한 결과. – peelman

+0

@peelman : Office 2011? –

+0

예 ... Office 2011 ... http : //www.microsoft.com/mac – peelman

2

내장 된 TRIM 기능을 사용할 수 있습니까? 그것은에 전달 된 텍스트의 시작과 끝에서 공백을 제거합니다

=TRIM(A1) 

이 공식이 선행 또는 whitepace 후행하지 않고 당신에게 A1 셀에서 텍스트를 줄 것이다.

수식을 사용하려면 원래 열 옆에 열을 삽입하십시오. 그런 다음 수식을 첫 번째 (맨 위) 빈 셀에 입력하고 원래 열의 첫 번째 (맨 위) 셀의 셀 좌표를 "A1"으로 대체 한 다음 Enter 키를 누릅니다. 그런 다음 셀의 오른쪽 하단을 잡고 (커서가 "+"기호로 변경됨) 상자를 새 열의 마지막 셀로 끌어 당겨 열의 모든 행에 대한 수식을 반복 할 수 있습니다.

+0

하지만 어떻게 정확히해야합니까 달리, 단지 문자열의 앞부분에서 작동? – Slee

+0

@ 슬레 : 내 대답을 업데이트했습니다.수식에 익숙하지 않은 경우 Google 또는 Excel의 도움말 기능을 시작해야합니다. –

10

pls는 점에 유의 :

  • TRIM는 표준 공간 즉, 문자 (32)을 제거합니다.
  • CLEAN은 캐리지 리턴 (문자 13) 및 줄 바꿈 (문자 10)로 비 인쇄 공백을 제거합니다
  • CLEAN 바꿈하지 않는 공백 (문자 160)는 데이터 처리와 공통의 문제를 다루지 않는다 웹이 당신은 당신이 더 많은 고통 중 하나를 전체 셀에 걸쳐 공식이 작업을 수행하거나 할 수

SUBSTITUTE 기능이 필요합니다 (그리고 최고의 공백을 목표)와

  1. 수식을 사용하면 세 가지 수식을 결합하여 =TRIM(CLEAN(SUBSTITUTE(A1,CHAR(160)," ")))처럼 전체 셀을 청소할 수 있습니다. Ron de Bruins의 글을 참고하십시오 here

  2. 아래의 VBA는 작업 열과 복사하여 붙여 넣기 없이도 배열과 정규 표현식을 사용하여 현장에서 효과적으로 데이터를 대체합니다. 사용 지침은 아래 코드에 포함되어 있습니다. 다음 무엇을 열 행을 선택하고 -이 코드는 공식 옵션

    Sub KillLeadingSpaces() 
    
        'Press Alt + F11 to open the Visual Basic Editor (VBE) 
        'From the Menu, choose Insert-Module. 
        'Paste the code into the right-hand code window. 
        'Press Alt + F11 to close the VBE 
        'In Xl2003 Goto Tools ....Macro .... Macros and double-click KillLeadingSpaces 
        'In Xl2007/10 Goto Developer .. Macros and double-click KillLeadingSpaces 
    
        Dim rng1 As Range 
        Dim rngArea As Range 
        Dim lngRow As Long 
        Dim lngCol As Long 
        Dim lngCalc As Long 
        Dim objReg As Object 
        Dim X() 
    
        On Error Resume Next 
        Set rng1 = Application.InputBox("Select range for the replacement of leading zeros", "User select", Selection.Address, , , , , 8) 
        If rng1 Is Nothing Then Exit Sub 
        On Error GoTo 0 
    
        'See Patrick Matthews excellent article on using Regular Expressions with VBA 
        Set objReg = CreateObject("vbscript.regexp") 
        objReg.Pattern = "^[\s|\xA0]+" 
    
        'Speed up the code by turning off screenupdating and setting calculation to manual 
        'Disable any code events that may occur when writing to cells 
        With Application 
         lngCalc = .Calculation 
         .ScreenUpdating = False 
         .Calculation = xlCalculationManual 
         .EnableEvents = False 
        End With 
    
        'Test each area in the user selected range 
    
        'Non contiguous range areas are common when using SpecialCells to define specific cell types to work on 
        For Each rngArea In rng1.Areas 
         'The most common outcome is used for the True outcome to optimise code speed 
         If rngArea.Cells.Count > 1 Then 
          'If there is more than once cell then set the variant array to the dimensions of the range area 
          'Using Value2 provides a useful speed improvement over Value. On my testing it was 2% on blank cells, up to 10% on non-blanks 
          X = rngArea.Value2 
          For lngRow = 1 To rngArea.Rows.Count 
           For lngCol = 1 To rngArea.Columns.Count 
            'replace the leading zeroes 
            X(lngRow, lngCol) = objReg.Replace(X(lngRow, lngCol), vbNullString) 
           Next lngCol 
          Next lngRow 
          'Dump the updated array sans leading whitepace back over the initial range 
          rngArea.Value2 = X 
         Else 
          'caters for a single cell range area. No variant array required 
          rngArea.Value = objReg.Replace(rngArea.Value, vbNullString) 
         End If 
        Next rngArea 
    
        'cleanup the Application settings 
        With Application 
         .ScreenUpdating = True 
         .Calculation = lngCalc 
         .EnableEvents = True 
        End With 
    
        Set objReg = Nothing 
        End Sub 
    
관련 문제