2017-08-08 33 views
1

我在目錄中有很多.csv文件。第四列(數字)之間有空格,如下例所示。如何從列中刪除空間並將其應用於目錄中的所有文件,而無需逐一打開每個文件。刪除目錄中特定列的空間

"EMIS Number","Organisation Name","Organisation Code","Number","Date","Clinical Code","Code Term", 
"11","West Hampstead Medical Centre","F03033","931 094 3111","19-Apr-1019","G340-1","Coronary artery disease", 
"14","Prince Of Wales Medical Centre","F03010","401 300 1319","03-Jan-1004","G30","Acute myocardial infarction", 
"13","HAMPSTEAD GROUP PRACTICE","F03014","411 419 3949","1999","G3","Ischaemic heart disease", 
"19","BROOKFIELD PARK SURGERY","F03031","400 134 0101","1991","G3","Ischaemic heart disease", 

P.S.我已經嘗試過Excel和VBA,但他們都需要打開每個文件才能運行公式。我也嘗試了UltraEdit,但它會刪除所有文件中的所有空格,而不是一個特定的列。

+0

因此,編寫一個vba循環遍歷文件,打開每個文件並執行刪除操作,然後保存該文件。 –

+0

打開文件有什麼問題? –

+0

這是我用vba得到的。我無法做循環。對不起,我不知道vba。 子SpaceKiller() 工作表( 「CHD001」)列( 「d」)更換_ 什麼:。=」」,_ 更換:= 「」,_ SearchOrder:= xlByColumns,_ MatchCase:=真 End Sub – Kennisblegad

回答

1

請參閱下面的代碼來遍歷所有文件。

Sub OpenFiles() 
    Dim MyFolder As String 
    MyFolder = "Your Folder Name where all files are saved." 
    Dim MyFile As String 
    MyFile = Dir(MyFolder & "\*.csv") 
    Do While MyFile <> "" 
     Workbooks.Open Filename:=MyFolder & "\" & MyFile 
     Columns("D:D").Replace What:=" ", Replacement:="", LookAt:=xlPart, _ 
      SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ 
      ReplaceFormat:=False 
     Activeworkbook.close true 
     MyFile = Dir 
    Loop 
End Sub 

一旦你打開你的文件添加代碼來刪除你的空間。

+0

我想你知道如何使用這個代碼... – Shrikant

+0

已經在我的代碼中做了一點改變。 'Activeworkbook.close true'。謝謝@ScottCraner – Shrikant

+0

哦哇。它完美的作品。非常感謝。你是一個拯救生命的人。 – Kennisblegad