VBA使用变量打开另一个工作簿和工作表

时间:2017-01-20 13:11:46

标签: excel vba excel-vba

我还没找到答案:

我有一张工作表,其单元格A2中的客户名称和单元格B2中的产品代码。 我有一个文件位置" C:\ Users \ Reception \ Documents \ Shared \ Item Master Data \ Customer BOMS \"为每个客户提供工作簿。在这些工作簿中,每个产品代码都有一个选项卡,其中包含制作产品的配方。

我需要做的是告诉宏在单元格A2中打开特定客户的工作簿,然后转到单元格B2中的选项卡。

我能够打开工作簿,但不能打开工作表。 这是我的代码:

Range("A2").Select

Dim CName As String

Dim PCode As String

Dim BOM As Workbook

Dim ws As Worksheet

CName = ActiveCell.Value

PCode = ActiveCell.Offset(0, 1).Value

Set BOM = Workbooks.Open("C:\Users\Reception\Documents\Shared\Item Master Data\Customer BOMS\" & CName & ".xlsm")

Set ws = BOM.Sheets(Range(PCode))

1 个答案:

答案 0 :(得分:2)

试试这个:

Range("A2").Select

Dim CName As String

Dim PCode As String

Dim BOM As Workbook

Dim ws As Worksheet

CName = ActiveCell.Value

PCode = ActiveCell.Offset(0, 1).Value

Set BOM = Workbooks.Open("C:\Users\Reception\Documents\Shared\Item Master Data\Customer BOMS\" & CName & ".xlsm")

Set ws = BOM.Sheets(PCode)
 ws.activate