Sub 巨集1()
'
' 巨集1 巨集
'
'
For i = 1 To 11
n = Right(String(2, "0") & i, 3)
Workbooks.Open Filename:="C:\Users\Min\Downloads\TEMP\TEST_" & n & ".csv"
Range("B1").Select
ActiveCell.FormulaR1C1 = "新欄位名稱1"
Range("D1").Select
ActiveCell.FormulaR1C1 = "新欄位名稱2"
Range("F1").Select
ActiveCell.FormulaR1C1 = "新欄位名稱3"
Range("F2").Select
Cells.Replace What:="=-不分區", Replacement:="000-不分區", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ChDir "C:\Users\Min\Downloads\TEMP"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\Min\Downloads\TEMP\TEST_" & n & ".xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
Next i
End Sub
2017年1月16日 星期一
2016年11月9日 星期三
Excel 巨集 - 自動編號
假設有一資料夾,每個檔案都要在第一個欄位塞入自動編號的值
Sub 新增第一欄為唯一序號()
'
' 新增第一欄為唯一序號 巨集
' 在Excel最左邊加上一新的欄位並給予唯一序號
'
'
For i = 2011 To 2016
Workbooks.Open Filename:= _
"C:\Users\Downloads\要加上自動編號\" & i & "NewData.xlsx"
Columns("A:A").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select '選擇 A1
ActiveCell.FormulaR1C1 = "唯一值" ' 填入欄位名稱
Range("A2").Select '選擇 A2
ActiveCell.FormulaR1C1 = "1" '填入數字 1
Range("A3").Select '選擇 A2
ActiveCell.FormulaR1C1 = "2" '填入數字 2
Range("A2:A3").Select '選擇 A2和 A3
' 以上的動作都是用錄製的
n = ActiveCell.CurrentRegion.Rows.Count ' 找到目前指定的cell的最大列數
Range("A3").Activate
Selection.AutoFill Destination:=Range("A2:A" & n)
Range("A2:A" & n).Select
ActiveWorkbook.Save
ActiveWorkbook.Close
Next i
End Sub
Sub 新增第一欄為唯一序號()
'
' 新增第一欄為唯一序號 巨集
' 在Excel最左邊加上一新的欄位並給予唯一序號
'
'
For i = 2011 To 2016
Workbooks.Open Filename:= _
"C:\Users\Downloads\要加上自動編號\" & i & "NewData.xlsx"
Columns("A:A").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select '選擇 A1
ActiveCell.FormulaR1C1 = "唯一值" ' 填入欄位名稱
Range("A2").Select '選擇 A2
ActiveCell.FormulaR1C1 = "1" '填入數字 1
Range("A3").Select '選擇 A2
ActiveCell.FormulaR1C1 = "2" '填入數字 2
Range("A2:A3").Select '選擇 A2和 A3
' 以上的動作都是用錄製的
n = ActiveCell.CurrentRegion.Rows.Count ' 找到目前指定的cell的最大列數
Range("A3").Activate
Selection.AutoFill Destination:=Range("A2:A" & n)
Range("A2:A" & n).Select
ActiveWorkbook.Save
ActiveWorkbook.Close
Next i
End Sub
訂閱:
文章 (Atom)
