iT邦幫忙

0

Range 如何寫會比較簡短?

  • 分享至 

  • xImage

Sub 巨集3()

Sheets("WSBOM").Select
Range("B65535").End(xlUp).Offset(1, 0).Select

ActiveCell.Value = Sheets("BOM").Range("B1").Value
ActiveCell.Offset(0, 1).Value = Sheets("BOM").Range("C1").Value
ActiveCell.Offset(0, 2).Value = Sheets("BOM").Range("D1").Value
ActiveCell.Offset(0, 3).Value = Sheets("BOM").Range("E1").Value
ActiveCell.Offset(0, 4).Value = Sheets("BOM").Range("F1").Value
ActiveCell.Offset(0, 5).Value = Sheets("BOM").Range("G1").Value

Sheets("WSBOM").Select
Range("B65535").End(xlUp).Offset(1, 0).Select
ActiveCell.Value = Sheets("BOM").Range("B2").Value
ActiveCell.Offset(0, 1).Value = Sheets("BOM").Range("C2").Value
ActiveCell.Offset(0, 2).Value = Sheets("BOM").Range("D2").Value
ActiveCell.Offset(0, 3).Value = Sheets("BOM").Range("E2").Value
ActiveCell.Offset(0, 4).Value = Sheets("BOM").Range("F2").Value
ActiveCell.Offset(0, 5).Value = Sheets("BOM").Range("G2").Value

新手發問!!
請問 如果我需要從Range B1~RangeG1一直做到 Range B200~Range G200,如何寫會比較簡短?或是可以直接找到BOM所有的行列,不設定一定要1~200(因為有些資料可能只有10筆 就不用還要抓到200行)

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

4
海綿寶寶
iT邦大神 1 級 ‧ 2022-02-16 15:53:05
最佳解答

如果 BOM 工作表的資料是連續的
整塊複製貼上會比較快

Sub Main()
    Sheets("BOM").Select
    Range("B1").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("WSBOM").Select
    Range("B2").Select
    ActiveSheet.Paste
End Sub

太感謝了!! 可以用了!!

如果是非連續性的 資料到I欄是空格 J欄又有值 該如何指定要到J欄?
因為這個公式 跑到H欄就停了

我找出答案了! 感謝海綿寶寶~

我要發表回答

立即登入回答