我对VBA编码不是很了解,我不得不做一些手工工作,如果你能帮助我,我会非常感激,我试着搜索了一下,但没有找到任何合适的答案。我想根据几个条件来复制行。
我的数据在sheet1的“工作簿A”中,A列到X列,C列有日期,W列有员工姓名列表。在‘工作簿B’中,我在工作表1中有条件,单元格A1包含日期(我会输入),在列B中大约有20个员工姓名从B1到B20我正在查看的是,‘工作簿A’中从A到X的行应该根据‘工作簿B’中的条件复制,该条件是单元格A1中的日期,如果W列(在工作簿A中)包含B1 to B20中的任何员工姓名到工作簿B,工作表2(代码/宏将在工作簿B中)的行将从一个工作簿复制到另一个工作簿中
在VBA中有没有一种方法可以查看外部工作簿是否包含来自不同工作簿的值?实际上,我有一个带有“宏”按钮的工作簿。一旦按钮被按下,它将从一个特定的单元格A2中获取一个电子邮件地址。我需要的是宏,以便能够从单元格A2中获取数据输入,并确定是否另一个工作簿也包含该电子邮件。我不想将电子邮件硬编码到VBA中,因为这个宏功能的工作簿是一个模板,并且将不断输入不同的电子邮件。因此,此宏功能将需要检查此外部工作簿,以查看输入的电子邮件是否包含在该工作簿中。我试着在网上查找资源,但我一直收到编译器错误。所以我不知道我做错了什么。我目前拥有的代码是非常基本的,但我认为,从一个开始的过程,这基本上是第一步: Di
创建筛选数据表并将该数据复制到另一个工作簿的宏。 持续收到错误1004,将自动筛选突出显示为问题。grp变量标准适用于B列。 源数据在'thisworkbook‘中,数据的目标是活动工作簿。 任何想法都将不胜感激。我觉得我遗漏了一些简单的东西 dim grp as string
dim wb as workbook
set workbook = activeworkbook
grp = wb.Worksheets(1).Name
Debug.Print grp
With ThisWorkbook.Sheets("CS
我正在尝试使一个单元格( A37 )等于VBA中的一个变量,并使该变量根据单元格A37更改它引用的工作簿。在A37中,我计划更改工作簿的名称,以更改它从哪个工作簿中提取数据。 单元格A37将具有我要从中输出的工作簿的名称,而单元格A38将具有我要从中输出的工作表的名称(在单元格A37的工作簿中)。 下面是我写的代码,但当我将OPEXsht设置为一个单元格时,我总是收到错误。(我对VBA编程非常陌生) Sub CellName ()
Dim OPEXwbk As String
Dim OPEXsht As String
OPEXsht = Workbooks("VBA TRIAL.x
我使用C#从Excel VBA迁移到VSTO。在VBA中,我有一个名为IsInCollection的3行自定义函数,如下所示:
On Error Resume Next
Set obj = collectionObject(itemObject)
IsInCollection = Not (obj is Nothing)
我一直使用它来检查给定的工作簿是否打开,或者工作簿是否包含具有特定名称的工作表,等等。因为集合和项参数被定义为对象,所以它可以使用任何对象。
我正试图在托管代码中创建相同的实用函数/方法,并且正在艰难地挣扎。问题出在collectionObject(itemObject)表达
在我的工作簿中,有一个用密码保护隐藏的工作表。
在Sheet1中,我有一个CommandButton控件,当在TextBox1中输入密码时,该控件使Sheet2可见。
在我的VBA代码中,当我关闭工作簿时,Sheet2是隐藏的,但是如果我再次打开它,密码在TextBox1中仍然可见。
关闭工作簿时是否可以清除TextBox1?
这是我关闭工作簿时的代码:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets("Sheet2").Visible = xlSheetVeryHidden
End Sub
背景:我目前正在使用excel开发一个“倒班”数据库。我将有一个中央excel工作簿,它将把表放在单独的表格上,存储数据。其他工作簿将与此数据库excel工作簿接口,并通过每个用户界面输入新行或替换表中的现有行。用户界面工作簿将根据需要从数据库工作簿表中提取查询表,以向用户提供信息。我相信一定有更好的办法。任何技巧或指点都会受到很大的赞赏。
问题:我已经用我的VBA数据库输入代码来刷新所有的查询,但是它没有更新查询。我做了一个单独的子程序来更新查询,但是当它被Databse输入代码调用时,它就没有了。
Sub Refresh_Queries
Dim ActWB as Object
Set A
我有一本有很多工作表的工作簿,每个工作表都有不同数量的相互关联的方程。我有一个工作簿宽的VBA计时器,应该每5秒运行一次。
当我在一个没有很多公式的工作表上活动时,它似乎每5秒运行一次.但是,如果我随后将活动表更改为更“繁忙”的工作表,则vba计时器就不会停止.或者如果它真的爆炸了,那就像几分钟后。直到我再次切换到一个不那么繁忙的工作表,然后计时器奇迹般地正常运行,而不需要重置任何东西。
我在繁忙的表格上没有任何特殊的VBA代码.我不明白为什么VBA计时器代码不能在所有的工作表上一致运行?如果计时器要受影响,则应该对所有工作表而不仅仅是特定的工作表进行影响。
下面是VBA计时器代码:
Sub
我有一个Excel工作簿,其中包含三个工作表。但是,所有工作表似乎都是隐藏的,但它们的可见性设置为xlSheetVisible (通过查看VBA编辑器中的工作表属性)。
这就是我到目前为止为解决这个问题所做的努力。
搜索谷歌寻求帮助,但所有类似的问题都通过将可见性从xlSheetHidden改为xlSheetVisible解决了。但在我的例子中,该设置已经设置为xlVisible。
- By using VBA I have tried to activate a sheet without any result.
通过阅读这篇文章,您可能已经猜到我能够从VBA编辑器中看到和访
我有一本由同事使用的excel书,当他们打开它时会受到保护,在测试我正在开发的一个新特性时,我遇到了一个我不懂的Excel奇怪的地方:
单击链接到宏的按钮时,VBA代码首先取消对工作簿的保护,如下所示:
Sub ButtonClick()
Dim userrange As Variant
Dim rrow As Range
Dim teeth As Range
' unprotect sheet
ActiveSheet.Unprotect ("password")
Application.EnableEvents = False
然后宏崩溃(我知道为什么,这不是问题所
几年前,我使用Excel97编写了一个VBA程序,该程序使用
Set R = Application.InputBox( Prompt etc. ... Type:=8)
方法,供用户选择打开的工作簿/工作表中的单元格。这在当时是没有问题的,但现在我正在修改Excel2007的程序,只有当用户输入A1格式的地址时它才能工作。它不允许用户在打开的工作簿和工作表之间移动,或滚动工作表来查找他想要的单元格。
然而,奇怪的是,如果它位于宏中,它确实可以像广告中那样工作,但只需使用鼠标在与宏相同的工作簿中选择一个单元格。
我想知道是否有人遇到过这个问题,他们找到解决方法了吗?