簡體   English   中英

VBA 代碼 Excel 從選項卡中提取特定單元格值到不同 Excel 文件上的表中

[英]VBA code Excel extract specific cell value from a tab into a table on a different Excel file

似乎這是今年的挑戰,因為每個人都在努力完成這項工作。

基本上,我試圖獲取一個代碼來將單元格 B1、B2、B3、A6、B6、C6 和 D6 上的值提取到新的電子表格中。 此提取來自大約 20 個包含完全相同單元格中的數據的不同選項卡,因此我的 VBA 代碼需要從 20 個不同選項卡中提取上述單元格上的值並將其全部添加到一個新的電子表格中?

這可能嗎? 我附上了一張圖片,解釋了所需的結果。

非常感謝!!

在此處輸入圖像描述

下面的代碼:

Sub TEST()
        Dim value1 As String
        value1 = ThisWorkbook.Sheets(1).Range("B1").Value 'value from sheet1
        value2 = ThisWorkbook.Sheets(1).Range("B2").Value 'value from sheet1
        value3 = ThisWorkbook.Sheets(1).Range("B3").Value 'value from sheet1
        value4 = ThisWorkbook.Sheets(1).Range("A6").Value 'value from sheet1
        value5 = ThisWorkbook.Sheets(1).Range("B6").Value 'value from sheet1
        value6 = ThisWorkbook.Sheets(1).Range("C6").Value 'value from sheet1
        value7 = ThisWorkbook.Sheets(1).Range("D6").Value 'value from sheet1
Then ThisWorkbook.Sheets(2).Range("L1").
End Sub

在同一個工作簿中創建一個工作表,其中包含名為“組合”的所有 20 個其他選項卡。 設置第 1 行的標題以匹配您的圖片....日期、價格、數量、成本、顏色...等。 那么這段代碼應該可以得到你想要的。 將其放入標准代碼模塊中。

Option Explicit

Sub AggregateData()

Dim ws As Worksheet
Dim comb As Worksheet
Dim lastrow As Long

Set comb = ThisWorkbook.Worksheets("Combined")

For Each ws In ThisWorkbook.Worksheets

    If ws.Name = "Combined" Then
    'skips the combined worksheet.
    Else
        lastrow = comb.Cells(Rows.Count, "a").End(xlUp).Row + 1
        
        comb.Range("a" & lastrow & ":d" & lastrow).Value = ws.Range("a6:d6").Value
        comb.Range("e" & lastrow & ":g" & lastrow).Value = Application.Transpose(ws.Range("b1:b3").Value)
    End If
Next ws

End Sub

暫無
暫無

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

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