返回列表 上一主題 發帖

[發問] 取代的寫法&公式無法正常運算

回復 1# adam2010
  1. Sub ex()
  2. With Sheets("data")
  3. .Cells.Clear '清空工作表
  4.    Sheets("Original").UsedRange.Copy .[A1] '複製資料
  5.    .Columns("C").Replace "*計", "" '將含有"計"的儲存格清空
  6.    .Columns("C").SpecialCells(xlCellTypeBlanks).EntireRow.Delete '將上列清空的位置整列刪除
  7.    .Columns("A").UnMerge 'A欄取消合併
  8.    .Rows(1) = .Rows(1).Value '標題列重新給值,可將原來數值存成文字部分改成數值
  9.    For i = 6 To 23 '分欄執行取代動作加快速度
  10.       .UsedRange.Columns(i).Replace "-", "" '去除-號
  11.    Next
  12.    .[F:P].Insert '插入欄
  13.    Sheets("公式").[F1:P2].Copy .[F1] '複製公式
  14.    r = .Cells(.Rows.Count, 5).End(xlUp).Row '資料列數
  15.    .Range("F2:P2").AutoFill Destination:=.Range("F2:P" & r) '公式向下填滿
  16. End With
  17. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 4# adam2010
  1. Sub ex()
  2. With Sheets("data")
  3. .Cells.Clear '清空工作表
  4.    Sheets("Original").UsedRange.Copy .[A1] '複製資料
  5.    .Columns("C").Replace "*計", "" '將含有"計"的儲存格清空
  6.    .Columns("C").SpecialCells(xlCellTypeBlanks).EntireRow.Delete '將上列清空的位置整列刪除
  7.    .Columns("A").UnMerge 'A欄取消合併
  8.    .Rows(1) = .Rows(1).Value '標題列重新給值,可將原來數值存成文字部分改成數值
  9.    For i = 6 To 23 '分欄執行取代動作加快速度
  10.       .UsedRange.Columns(i).Replace "-", "" '去除-號
  11.    Next
  12.    .[F:P].Insert '插入欄
  13.    Sheets("公式").[F1:P2].Copy .[F1] '複製公式
  14.    r = .Cells(.Rows.Count, 5).End(xlUp).Row '資料列數
  15.    .Range("F2:P2").AutoFill Destination:=.Range("F2:P" & r) '公式向下填滿
  16.    k = .UsedRange.Columns.Count + 1 '得到已使用欄位數
  17.    Sheets("公式").[DL1:DS2].Copy .Cells(1, k) '複製公式到表尾
  18.    .Cells(2, k).Resize(, 8).AutoFill .Range(.Cells(2, k), .Cells(r, k + 7)) '向下填滿
  19. End With
  20. End Sub
複製代碼
學海無涯_不恥下問

TOP

        靜思自在 : 【時間如鑽石】時間對一個有智慧的人而言,就如鑽石般珍貴;但對愚人來說,卻像是一把泥土,一點價值也沒有。
返回列表 上一主題