Office

VBA Excel:如何检查值是否在选定的值范围内(或当前单元格)

我在单元格列中有一组参考数据(它可能是一行,但无论如何)。 我想通过几个工作表,检查所选值的范围,如果当前单元格值在参考数据中,则将其用作粘贴到下一系列单元格的偏移量中的值,直到当前单元格已更改为参考数据中的某个新值,粘贴过程应该为新值和下一系列单元格重复。 例如 Sub doStuff() Dim RefRange As Range,queryRange As Range,ch ..
发布时间:2017-09-26 21:18:26 Office

“对象不支持该动作”在Excel 2011(Mac OS X)中的下拉菜单

我有一个使用Office 2010制作的大型Excel工作簿,其中包含一些VBA代码。除了下拉菜单之外,一切似乎都工作得很好。确切地说,它们以图形方式工作,但是 Me.Shapes(“Drop Down 1”)。ControlFormat 抛出“对象不支持此操作”错误(我确定“下拉1”是正确的名称,等等),正确地,它被正确地引用(例如 shape = Me.Shapes( ..
发布时间:2017-09-26 21:16:18 Office

无效或不合格参考

我需要放入表格名称吗?我需要在多个工作簿中使用这个宏,并且使用类似的工作表,但是选项卡名称是不同的。 Sub pageSetup() ActiveSheet.pageSetup .Orientation = xlLandscape .PaperSize = xlPaperLegal .FitToPagesWide = 1 .FitToPagesTall = 1 .Le ..
发布时间:2017-09-26 21:15:51 Office

在范围内的单元格上迭代时,键入不匹配错误

嗨,我试图在我的电子表格上运行以下vb代码,但是我在Randge中收到错误,因为数据类型不匹配。我只是试图锁定单元格的值为0.有一些单元格#NA值有任何想法? Sub Test() Dim Cell As Range Set MyPlage = Range(“J6:J1074”) MyPlage.Cells中的每个单元格 如果不是IsError(单元格)然后 如果范围(“J6:J1 ..
发布时间:2017-09-26 21:14:41 Office

VBA运行时错误'9':下标超出范围;尝试激活另一个工作簿

我正在尝试在Excel 2010中创建一个VBA,从另一个电子表格获取信息,我不允许将其修改,并将其转换到内置宏的电子表格。这是我的代码: Sub BringUpWorkbook() 工作簿(“RITE 1624.xls”)。激活 End Sub 我有几本VBA书籍,已经访问了互联网上的数十个网站,包括那些在stackoverflow.com上的网站,找不到为什么我收到 ..
发布时间:2017-09-26 21:14:28 Office

在将一行复制到其他列时排除一些列

我想将Excel中的一行的内容复制到其他行。 目前,我正在使用以下代码复制上一行的数据。 rngCurrent.Offset(-1).Copy rngCurrent.PasteSpecial(xlPasteValues) 示例: 假设以下是行中的数据。 要复制的行........> 1 2 3 4 5 6 7 8 .... 14 15 ..
发布时间:2017-09-26 21:14:10 Office

如果单元格在VBA / Excel中包含特定值,那么如何从范围中删除列

我正在尝试写一些VBA,它将检查一列单元格(行M到GD)中的单元格的值,如果单元格不包含“YY”删除列。 要检查的单元格始终位于第22行 我尝试过以下操作,但这很慢。 > w = 186 Do 如果Worksheets(“SOF”)。Cells(22,w).Formula = “YY”然后 w = w - 1 Else 工作表(“SOF”)。单元格(22,w). ..
发布时间:2017-09-26 21:13:52 Office

object_Worksheet的方法“范围”失败错误-2147417848(80010108)

我已经广泛搜索,但似乎没有找到任何关于我的问题。我有一个工作簿,各种VBA与单元格公式混合。因为它现在坐起来很好,但是如果我尝试添加或修改一个简单的单元格引用,例如“= N24”,它会打破我的代码并抛出错误: 运行时错误'-2147417848(80010108)':object'_Worksheet的方法'范围'失败 这是不管我是引用计算单元格,用户填充单元格还是空白单元格。 ..
发布时间:2017-09-26 21:13:23 Office

如何在excel vba中选择全系列

当我调试一个excel-vba程序时,我知道我的数据范围没有被完全选择。 下图显示了我的数据模型和我的问题。 I使用此代码选择整个范围。但是这不能正常工作。 Dim rngTemp As Range 设置rngTemp = Cells.Find(“*” SearchOrder:= xlByRows,SearchDirection:= xlPrevious) 用rngTemp ..
发布时间:2017-09-26 21:12:25 Office

VBA全局类变量

我的障碍是试图获得多个子元素来识别类变量。当我尝试在全局声明它,我得到一个编译错误:“外部程序无效”。然后,当我运行一个public函数或者sub来声明变量时,它们在另一个子集中保持未定义。我想要多个subs来识别变量,因为它们的值应该通过UserForm进行更改,然后在不同的子节点中使用。 如果它可以以这种方式工作,伟大的,但我明白我的设计可能从根本上是有缺陷的。请指教! 这是我的C ..
发布时间:2017-09-26 21:09:48 Office

声明关闭时编译错误

平台:Microsoft Visual Basic 6.5和MS Excel 2007 我正在尝试一个宏来对excel启用文件进行一些编辑。完成关于如何关闭Excel文件而不保存的研究。 网页在我可以使用该方法之前教导我进行声明。我插入复制命令并尝试编译。收到编译错误,预期结束语句。任何人知道声明有什么问题? 公共可覆盖子关闭(_ SaveC ..
发布时间:2017-09-26 21:09:33 Office

VBA从两个范围的联合复制到另一个范围的行

亲爱的合格人士。 我在下列代码中遇到问题,具体来说,子代码正确完成,但不会将正确的数据复制到正确的位置。我得到一个与迭代器不相关的零行的重复模式。 我认为问题在于复制一个子集的值范围,剧集& r。以前我看过使用联盟财产,但下面的评论者显示是错误的。 目前,我的九个范围名为“Episode”1-9,其中每行包含一个受访者的数据。这些范围的第5至15列包含要复制的数据,因此每个受访者 ..
发布时间:2017-09-26 21:09:18 Office

如何在Excel 2011 for Mac中解析XML?

我有一些VBA代码用于从 Excel(2007年,2010年)访问各种基于XML的Web API,并且刚刚运行在Mac上运行 Excel 2011的用户即可。我开发的代码取决于对MS XML 6.0的引用,这显然在Mac上不可用。 这个似乎是一个问题其他人反而无法解决。 用户是否可以下载并安装相关的.dll? 解决方案 一个跨平台解决方案是使用QueryTable 像这样的一个 ..
发布时间:2017-09-26 21:07:57 Office

排序而不移动格式

我有一个Excel表,其中多行被VBA宏赋予不同的彩色背景。这些背景颜色应该锁定到行。我的问题是,当表格按一列或另一列排序时,数据重新排序时,背景颜色会移动。 我可以以另一种方式格式化停止这样会使单元格保持锁定? 我用于格式化的代码是: 对于每行在rng.Rows 如果条件然后 Row.Select cIndex = ColourIndex (颜色) 与Sel ..
发布时间:2017-09-26 21:06:31 Office

使用Excel-VBA(MSXML2.XMLHTTP对象)更新SharePoint列表

常规信息:我需要从Excel更新(添加/编辑)SharePoint列表。我能够使用 ListObject 来实现,但这不是我们导向的方向。 之后阅读所有Google的可能性,我想出(可能我错了)想要使用 MSXML2.XMLHTTP 对象来更新SharePoint列表。 当前问题:我的代码如下,直到结束,我得到 objXMLHTTP.Status = 200 ,但SharePoint列 ..
发布时间:2017-09-26 21:06:17 Office

Excel OnTime事件计划程序

我需要在特定时间每天运行我的excel VBA。我google了ontime方法,但是我没有从中得到全面的了解。我会提出来,以清理我的时间方法的混乱。 在运行之前,contains excel工作簿是否必须打开ontime方法。如果是,有没有办法在特定时间自动打开excel工作簿。我知道它是由Timer或Windows任务计划程序完成的。 有人可以通过这个工作。我的当前代码是否适合自动化任 ..
发布时间:2017-09-26 21:04:51 Office

Vlookup在VBA中的for循环

我一直在麻烦这个宏工作。如果通过vlookup函数不等于另一个工作表上的相应值,我希望它循环遍历一个单元格并将其清除。但是我不断收到这个代码的错误: 对于每个单元格在工作表(“Sheet1”)。范围(“A2: A1000“) 如果单元格 Application.WorksheetFunction.VLookup(单元格,工作表(“Sheet2”)。范围(“C3:E128”),3,0)然后 ..
发布时间:2017-09-26 21:03:38 Office

循环结束变量不变

我已经写了一个非常简单的循环,通过一个表列,并将负值红色,正值绿色并删除空行。 问题发生在行被删除。我更新了 RowCount 的值,并补偿 i 再次检查同一行,因为行刚刚被删除。如果我有一列有10行,其中2是空的,它们将被删除。我希望对于i = 1到RowCount 停止在8,但是它继续9,并产生一个错误,因为它尝试删除不存在的第9行。 p> 我需要做什么,循环停止在8而不是继续(我 ..
发布时间:2017-09-26 21:03:13 Office

VBA发现函数获取错误424对象需要

我有代码获取错误424对象需要 lr = Range(“O:O”)。计数,1).End(xlUp).Row 对于y = 0到UBound(myVariable) a = myVariable(y) 范围(“O:O”)。选择 Set objXL = GetObject(,“Excel.Application”) Set z = Cells.Find(what:= a,After:= ..
发布时间:2017-09-26 21:02:29 Office

是否有一个调用堆栈级别限制?

我有几个同事在Excel VBA中看到一些不好的代码,想知道调用堆栈中的级别数量有限制 解决方案 除非函数是尾递归的,否则VBA可以处理它(它不能),那么你将遇到堆栈溢出。 作为一个简单的测试,我将以下代码片段合并在一起: Dim count As Integer Sub Rec () count = count + 1 单元格(1,1)=计数 调用Rec E ..
发布时间:2017-09-26 21:01:21 Office