Tag: 全局variables

一个模块不会看到公共variables

对不起,有什么不对了 标准模块: Public ws1 As Worksheet Public rCopy As Range Workbook_Open: Set ws1 = Sheets("abc") Set rCopy = ws1.Range("A1") 第三模块: ws1.Select ' Error rCopy.Select ' Error 请帮忙。

VBA公共string不保存

我试图自动保存一个文件使用公共variables在两个单独的function,但由于某种原因,我的公共variables似乎并没有保存。 在我为公共variablesgammaSheet赋值ImportGammaData() ,该函数可以正确分配Sheets(wkbkSheet).Name = gammaSheet 。 MsgBox(gammaSheet)也显示正确的string。 不幸的是,当我尝试在SaveAs()使用gammaSheet时,它没有任何价值。 MsgBox(gammaSheet)显示什么都没有。 这是怎么回事? Public gammaSheet As String Public radionuclide As String Public radioligand As String Public studyCond As String Public studyDate As String Public folderName As String Public studyName As String Public gammaFile As Excel.Workbook ____________________________________________________ Sub ImportGammaData() Dim wkbkSheet As String wkbkSheet = ThisWorkbook.Sheets(6).Name ThisWorkbook.Sheets(wkbkSheet).Range("A1:L105").Value = "" […]

带有可变参数的Excel SUMIFS sum_range

所以我有一个Excel电子表格指标,我想做一个SUMIFS语句,将改变我select的列。 所以我会在左边的列名称,我想用它作为不同的参数。 请参阅下表。 TABLE1 week1 week2 week3 column1 xxx column2 xxx column3 xxx TABLE2 Week column1 column2 column3 1 xxx 1 xxx 1 xxx 2 xxx 2 xxx 2 xxx 所以在上面的表中TABLE2保存了所有的数据,而TABLE1基本上是按周数据的总和。 所以我希望SUMIFS读取SUMIFS(TABLE2 [????],TABLE2 [Week],$ B $ 2)之类的东西,但我不知道如何获得SUMIFS的sum_range部分让我传递参数任何提示或想法如何做到这一点?

这个variables将如何响应

我正在使用Excel VBA,但我认为这是一个相当普遍的问题。 我有以下声明 Public newReport As Excel.Workbook 在后面的代码中,打开并命名一个xlsx文件MyBook.xlsx我将这个variables指向文件: Set newReport = Excel.Workbooks("MyBook.xlsx") 我又变得有些困惑了。 variables行为。 如果我以后打开MyBook.xlsx,并执行ActiveWorkbook.SaveCopyAs并给它一个新名称,说MyBookNew.xlsx将variablesnewReport指向新的工作簿? 相关代码的例子如下: Public newReport As Excel.Workbook Sub FileExperiment() Set newReport = Excel.Workbooks.Add newReport.SaveAs ThisWorkbook.Path & "\MyBook.xlsx" Set newReport = Excel.Workbooks("MyBook.xlsx") ActiveWorkbook.SaveCopyAs ThisWorkbook.Path & "\MyNewBook.xlsx" newReport.Close False End Sub

我想findsheet2上的最后一行,然后能够将每个单元格移动到sheet1上定义的位置

我已经search了所有网站上的主题行中显示的信息,所以我可以继续前进这个小项目。 我希望能够在工作表2上find最后一行,然后将每个单元格的内容提取回工作表1中的预先定义的位置或预先定义的variables。 我已经能够find最后一行 Cells(Application.Rows.Count, 1).End(xlUp).Select 并用定义的单元格的内容填充文本框 TextBox1.Value = Sheets("Sheet2").Range("a1").Value 我希望以上信息足以让某人指引我正确的方向。 我感谢和帮助,任何人都可以提供。

根据Excel中的variables从不同的单元格进行数据合并

我确信有一个简单的答案,但我已经从字面上看了几个小时,没有用。 这是场景… 如果我有20个弹珠: Column A是20行,每个单元格包含值1 。 Column B是一个下拉菜单,需要用户selectRed Blue或Yellow如果我select了Red的10个单元格B,列B,那么我需要单元格E1反映值“10”如果我select了Blue列中的6个单元格B ,那么我需要单元格E2反映值6如果我selectYellow的B列中的4个单元格,那么我需要单元格E3反映值“4” 我需要根据列B中的下拉菜单中select的信息自动填充列E中的单元格(我的统一数据)中的总数。我假定有一个代码可以在E1中input如果右边的单元格中的值是“红色”,则总计A列中单元格的值。 如果我想更改为以下scheme,则需要能够保持正确的状态….列A长20行,每个单元格包含不同的值。 B列是需要用户select“红”“蓝”或“黄”的下拉菜单 A1 relfects "3" A2 reflects "4" A3 reflects "2" B1 reflects "Red" B2 reflects "Red" B3 reflects "Red" E1 needs to reflect "9" 我还在学习很多,所以我不是很熟悉。 正如我所说,我相信这不是太困难,我似乎无法find它。 我虽然我在“ADDIF”代码的正确轨道上,但我无法确定variables。 也许我不知道如何“谷歌”这个问题。 任何帮助,将不胜感激!

将值分配给从Excel导入的variables

我需要将一个excel文件导入math公式中,其中有2000个化合物,每个化合物都有6个数值常量。 最终目标是将复合名称input到math公式中,并输出6个数字常量。 到目前为止,我的代码是: t =导入[“Titles.txt。”,{“Text”,“Lines”}]( 导入化合物名称 )n = Import [“NA.txt。”,“List”]( 导入每个化合物的6个值 ) n [[2]]( 输出第二个化合物的6个值 ) 而不是n [[#]],我想知道如何从input的化合物名称中input化合物,并输出6个值。

使用变长主题和退货的中间和左侧函数的Excel – 分割内容

在Excel中使用左侧和中间函数将Outlook格式的联系人分割。 使用[]显示单元格的内容… A1 = [fname lname <email@domain.com>;] 我需要将这些内容分成以下几部分,除去空格,<,;等等。请记住,不能使用字符数字的静态开始或长度,因为所有这些名称,电子邮件,域都是可变的。 B1 = [fname] C1 = [lname] D1 = [email@domain.com] 我在C1上遇到问题。 这里是我使用的function。 对于B1 = [= LEFT(A1,FIND(“”,A1)-1)] – 这只是第一个名字 对于C1 = [= MID(A1,FIND(“”,A1)+ 1,FIND(“”,A1))] – 这不起作用,它切断更长的姓 对于D1 = [= MID(A1,FIND(“<”,A1)+ 1,SEARCH(“>”,A1,1)+1)] – 这适用于拉出电子邮件地址。 任何人都可以帮助C1的这个function? 我无法弄清楚如何阻止它缩短一些姓氏。 我试图设置字符的数量,以find下一个开放的空间“”之后的姓氏和“<”,但它不起作用。 让我知道。 谢谢!

使用variables在Excel文件中创build列

背景: 我正在导出一个交叉表查询从访问Excel模板。 由于它是一个交叉表查询,当我select不同的date来查看生产力报告时,每当我运行它(这些都是客户端名称)时,它给了我不同的标题名称不同的logging。 这意味着标题不一致。 有时我得到一个标题列,有时我得到5个标题的logging列。 问题:正如我前面提到的,我出口到一个Excel模板 ,其总字段一直到Excel表格的右侧和每列的底部。 我不希望我的查询标题与右侧的计算字段重叠。 我只想要查询logging和标题附加在总字段的左侧,所以一旦logging插入Excel文件,他们将自动计算。 我怎样才能做到这一点。 PS:我的查询正在成功导出,但现在它与右侧的总字段重叠。 同样在我的VBA编码中,它给了我要追加在Excel中的列数。 只是想我应该让你们知道。 谢谢

使用对象variables引用不同的工作簿工作表工作簿已经打开

用这个我正在撞墙。 我一直在写完整的工作簿()。sheets()引用。 寻找一个更短的方法来做到这一点,我发现一些stackoverflowpost和答案,似乎很简单,但是当我尝试它…它不工作。 我不需要打开我想引用的工作簿,因为我find了一种方法来编写代码,当主工作簿打开时自动打开…并保存并在主closures时closures。 我在Set wb = Workbooks()行中得到“编译错误:子或函数未定义”。 我紧跟这个问题的答案参考工作簿和工作表的variables 是否有一个特殊的地方可以定义一个对象variables,或者在需要时可以在任何子类或函数中完成。 还有一个地方,我可以定义它整个项目看到它,所以我只需要定义一次。 如果是的话,我会在那个位置定义它们,并总是使用速记引用。 Public Sub VTest() Dim WbStats As Workbook Dim WSPO1sts As Worksheet Set WbStats = Worksbooks("Stats.xlsx") 'this line spawns the compile error I mentioned. Set WSPO1sts = WbStats.Sheets("PO1sts")