Tag: 全局variables

VBA函数和variables

我有一个关于VBA中的variables和函数的问题。 我不打算包括项目到底是什么,希望最初的问题不会变得模糊。 如果需要的话,我可以解释这个项目将被使用。 是否有可能在VBA中创build通用variables,以便所有function都可以使用它们? 例如: Dim testVariable As String Dim newVariable As String testVariable = "A" Function testFunction() As String …. newVariable = testVariable End Function 截至目前,testVariable(在函数中)是“Empty” 谢谢, Jesse Smothermon

如何在VBA中运行一个string作为命令

我有下面这个简单的VBA代码,我不知道为什么不工作。 Sub Run() test = "MsgBox" & """" & "Job Done!" & """" Application.Run test End Sub 我想要做的就是把VBA命令放到一个variables中作为文本,并作为命令运行。 在这种情况下,我想像MsgBox "Job Done!"一样运行 并只打印: 任务完成!

如何获得Excel单元格的“名称框”名称?

我在Excel中有一个单元格,通过使用Excel名称框将variables名称this_cells_name分配给单元格D2 。 以下是Excel名称框的一个例子: 我希望能够指向该单元格并获取作为返回值的variables名称。 我知道如何做到以下几点: 使用=CELL("address",D2)并获得"$D$2"作为返回值, 使用=CELL("address",this_cells_name)并获得"$D$2"作为返回值。 我想要做到以下几点: 使用=some_function(D2)并获取"this_cells_name"作为返回值。 我怎样才能做到这一点? VBA解决scheme将会很好。

在VBA中声明全局variables的正确过程?

我有一个macros的工作簿,其中有一些永久存在的工作表,这些工作表经常被清除,更新等等。由于它们在各种子程序中被引用,我已经按照以下方式将每个相应的工作表对象作为一个伪全局variables: “主”表的示例: Function MAIN() As Worksheet Set MAIN = ThisWorkbook.Sheets("Main") End Function 通过这样做,我可以参考其他子例程中的每个工作表,例如: MAIN.Cells.ClearContents 我也以类似的方式定义了一些伪全局常量,这些常量位于“Main”表单中的固定位置,例如: Function NumLines() As Integer NumLines = MAIN.Range("C3").Value End Function 这样,我就像整个代码中的任何variables一样使用“NumLines”。 我希望有一种更有效的方式来pipe理像这样的全局访问variables,并想知道,什么是更好的方法来实现这一目标?

迭代集合(VBA)

你好,我是VBA新手,我正在尝试迭代我已经做的一个集合,并为每个值执行一个操作。 这是我的代码: Sub makeRowsMatch() Dim rows As VBA.Collection Set rows = New VBA.Collection Dim i As Integer Dim j As Integer Dim y As Integer For i = 2 To 22203 For j = 2 To 121 If Cells(i, 2).Value <> Cells(j, 38) Then rows.Add (i) End If Next j Next i For Each y […]

SSIS与可变的Excel连接pipe理器

我正在尝试在SSIS中使用WMI事件观察程序任务自动执行程序包。 我想要的function是当excel文件被放入某个文件夹时自动执行包。 但是,这些excel文件将成为填充数据库的连接pipe理器。 目前SSIS不会允许我这样做,因为我的excel连接pipe理器在运行程序时没有path,只有在文件被删除后才存在。 有没有办法让variables的Excel连接pipe理器或连接string的值是一个variables? 另外,如何在expression式中实现这个variables的使用?

Excel – VBA:从Sub传递variables到Userform

我已阅读并应用了类似主题上find的解决scheme,但在我的案例中似乎没有任何工作。 所以,我想从我的Module1的一个子variables传递给一个用户表单。 这是一个名为“provinceSugg”的string。 这是我的代码的相关部分: Public provinceSugg As String Sub probaCity() […] If province = "" And city <> "" Then provinceSugg = sCurrent.Cells(p, db_column).Offset(0, 1).Value UserForm2.Label1 = "Do you mean " & city & " in " & provinceSugg & " ?" UserForm2.Label1.TextAlign = fmTextAlignCenter UserForm2.Show Else End If End Sub 然后在我的用户表单代码中: Private Sub userformBtn1_Click() […]

如何用R或Excel中的分组variables计算第95百分位的值

我正在计算按分水岭分组的多个水质值的第95百分位。 例如… Watershed WQ 50500101 62.370661 50500101 65.505046 50500101 58.741477 50500105 71.220034 50500105 57.917249 我审查了这个问题发布 – 每个观察w / r / t分组variables的百分位数。 它似乎非常接近我想要做的,但是这是为了每个观察。 我需要它为每个分组variables。 如此理想, Watershed WQ – 95th 50500101 x 50500105 y 谢谢

在Excel VBA中检查公共variables的值 – Locals Window Alternative

我一直在使用Locals窗口来检查过程级variables的分配。 我最近更新了我的代码,以创build一个公共级别的variables集合,这些variables从工作表中读取某些不会改变的input。 当试图检查这些variables时,我不会在Locals窗口中看到它们,毫无疑问,因为它们不是本地定义的variables! 公共variables的本地窗口是否有其他select? 如果不是,我该如何检查公共variables赋值?

如何将Excel VBA中的全局variables声明为在工作簿中可见

我有一个关于全球范围的问题,并把这个问题抽象成一个简单的例子: 在Excel工作簿中:在Sheet1中,我有两个(2)button。 第一个被标记为SetMe ,并链接到Sheet1模块中的子例程: Sheet1代码: Option Explicit Sub setMe() Global1 = "Hello" End Sub 第二个标签为ShowMe ,并链接到ThisWorkbook模块中的子例程: ThisWorkbook代码: Option Explicit Public Global1 As String Debug.Print("Hello") Sub showMe() Debug.Print (Global1) End Sub 点击SetMe会产生一个编译器error: variable not defined 。 当我创build一个单独的模块,并将Global1的声明移入它时,一切正常。 所以我的问题是:我读过的一切都表明,在模块的顶部声明的全局variables,任何代码之外的variables应该对项目中的所有模块都可见。 显然情况并非如此。 除非我对Module的理解不正确。 对象Sheet1 , Sheet2 , ThisWorkbook ,…随工作簿一起提供:是不是可以在全局范围声明variables的模块? 或者是唯一可以声明一个全局的地方,在一个单独的Moduletypes模块中 。