簡體   English   中英

將原始數據復制到目標工作表的特定單元格中

[英]Copy raw data into specific cells of a target sheet

我在同一個工作簿中有兩個工作表,即 sheet1(“原始數據”)和 sheet2(“概述”)。

我將下載的數據復制到 sheet1(“原始數據”)中。 這里的行數有所不同,但標題/列始終相同。 在此之后,我需要將特定單元格復制到另一個工作表中。

以下是我正在考慮的“規則”:

1) 始終將原始數據表 E9、W9、X9 和 Y9 中的單元格復制到目標表中的特定單元格中。 我有這樣的事情(有效):

Worksheets("overview").Range("X10").Value = Worksheets("rawdata").Range("E9").Value

2) 始終復制最后一行 E 列中的值。 但是,最后一行因原始數據而異,而列 (E) 保持不變。 我試過這樣的事情:(不工作)

....= Worksheets("rawdata").Range("E1").End(xlDown).Value

3)腳本應該鏈接到按鈕,當我再次單擊按鈕從工作表原始數據中插入數據時,數據應該插入到工作表概述的下一(以下)列中。

假設列 E 總是有數據。 在這種情況下應該是正確的。

抱歉試圖簡化並破壞了它。

LastRow_WithDataInColumnE = Worksheets("rawdata").Range("E" & .Rows.Count).End(xlUp).Row

應該

With Worksheets("rawdata")
    LastRow_WithDataInColumnE = .Range("E" & .Rows.Count).End(xlUp).Row
End With

現在 .Rows.Count 應該指的是 Worksheets("rawdata")

Worksheets("overview").Range("X10").Value = Worksheets("rawdata").Range("E" & .Rows.Count).End(xlUp).Row.Value

應該

With Worksheets("rawdata")
    Worksheets("overview").Range("X10").Value = .Range("E" & .Rows.Count).End(xlUp).Row.Value
End With

這里有一個討論Error in find last used cell in VBA 對於列 E 中沒有數據或行已被刪除的情況,建議更好的解決方案。

您可以執行以下操作來獲取 E 列中的最后一個數據范圍:

Public Function FindLastColumnECellAvailable()
    FindLastColumnECellAvailable = "E" & WorksheetFunction.CountA(Range("E:E"))
End Function

然后你會有這個:

在此處輸入圖片說明

最后只讀取單元格值:

Range(FindLastColumnECellAvailable).Value

在此處輸入圖片說明

你好

對不起,“提前”道歉,我剛看了日期,希望這對你或其他人有幫助,這是我的第二天

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM