首页 > 解决方案 > 使用带有打开工作簿变量的 if 语句

问题描述

我正在尝试简化一些代码,并想知道是否可以使用 If 语句来设置不同的打开工作簿变量,具体取决于定义范围的一些条件。

基本上像

dim ws as worksheet: set ws = Thisworkbook.worksheet("worksheet name")
dim r as range: set range = ws.range("A cell which has an if statement in it to display a number based on another cells contents")
dim wb as workbook

这是我想将实际工作簿设置为 wb 的地方

if r.value = 1 then
set wb = Open a workbook
elseif r.value = 2 then
set wb = Open another workbook

理想情况下,我会对 ws2 执行相同的操作,这将是上面指定工作簿的特定工作表变量

不确定这种方法是否有效,并想知道我是否走在正确的轨道上。我有代码可以打开一个工作簿,在各个行中查找值,插入行,复制单元格内容。,在两个 ws 变量之间,等等。它可以工作,但我需要添加更多的工作簿选项,我宁愿没有多个宏唯一的区别是第二个工作簿打开和使用的变量。

标签: excelvba

解决方案


没关系 - 尝试了上述方法,它似乎工作正常 - 我想只是缺乏一点信心。


推荐阅读