我想达到的目标是:
我希望将工作表的副本分配给变量,以便以后使用。
我的尝试和结果
First :下面的代码工作得很好。像这样的东西我想要实现,但使用worksheet.copy。
Sub DuplicateSheetRenameFirst()
Dim wsDuplicate As Worksheet
Set wsDuplicate = Worksheets.Add
wsDuplicate.Name = "Duplicate"
End Sub
第二步:使用复制方法,在当前工作簿中创建工作表,但生成运行时错误424对象所需的。
Sub Duplicate
我是VBA新手,我很难理解在代码中声明对象的概念…… 下面的代码是工作表更改事件的一部分,当用户尝试选择在“我的工作簿的sheet1”上建立的三个“可填充”名称范围中的任何一个时,该事件将用户定向到"F6“。我使用“联合”函数从几个有效的if语句中合并了这段代码,现在每当我运行我的宏时,我都会收到运行时错误'424‘。 Set ws = ThisWorkbook.Sheets("Inventory in-out")
If target.Row < 14 And Intersect(target, Union(FILLABLE_TOP_MER, FILL
代码:
Sub Usuns()
Dim wiersz, licznik As Integer
wiersz = 0
licznik = 0
Do
licznik = licznik + 1
If Range("B" & licznik).Value Is Null Then
Range("B" & licznik).Select
Selection.Delete
wiersz = wiersz + 1
Else
wiersz = 0
End If
If wiersz = 50 Then
Exit Do
我正在尝试设置一个宏,它循环遍历工作簿中的所有工作表并更新它们上的表。所有的工作表都是同一个模板的副本,所以当创建新的工作表时,表名就会上升一个(Table3,Table4,Table5.)我不知道如何在For循环中设置它,以便在没有直接引用的情况下遍历表的每一行。
For Each Sheet in Workbook
Set tbl = ActiveSheets.ListObjects
For i = 13 To tbl.ListRows.Count
' Code to refresh
不知道在ListObjects之后放什么,这样它就会转到表上。这会
我有两个vba项目,一个是针对员工的,另一个是针对产品的。
第一个是它工作得很好,所以我从员工那里得到了用于产品的代码。
问题是,代码的这一部分在employees vba项目和产品中运行良好,我收到了424对象是必需的错误:
ThisWorkbook.Worksheets("Plan1").Activate
Dim ID As Long
With Plan1
ID = .Range("A" & .Rows.Count).End(xlUp).Row + 1
.Range("A" & ID) =
我在Excel表格中创建了一个组合框,并将其命名为"GraphChoice“。它位于名为"Choose Graph“的工作表中
在VBA中,我尝试使用以下代码填充数据:
Sub Choose_graph_and_date()
Dim Graph As Worksheet
Dim FormInfo As Worksheet
Set Graph = Worksheets("Choose Graph")
Set FormInfo = Worksheets("Forminfo")
Graph.Activate
Graph.GraphChoice.Li
我正在尝试将文本从文本框复制到剪贴板上。
Private Sub CommandButton1_Click()
With New MSForms.DataObject
.SetText TextBox1.Text
.PutInClipboard
End With
End Sub
我得到了
“需要运行时错误'424‘对象。
调试会导致.setText TextBox1.Text突出显示并说"MyData <对象变量或块变量未设置“。
我在代码的最后一行得到了运行时错误'424‘,我不明白为什么。有什么需要帮忙的吗?
Dim sourceSh As Worksheet
Dim destSh As Worksheet
Dim FileName As String
Dim destWk As Workbook
Dim sourceWk As Workbook
FileName = "Data.xlsx"
Set destWk = Workbooks.Open(FileName)
Set sourceWk = DataEntry
Set sourceSh = sourceWk.Sheets(Data_E
我有一个在用户活动单元格上方插入12行的代码。我正在尝试让代码从另一个工作表复制特定的范围,并将其粘贴到新创建的行中。我一直收到一个424的运行时错误。我该如何解决这个问题呢?
下面的代码
With ActiveSheet
For i = 1 To 12
ActiveCell.Rows.EntireRow.Insert Shift:=xlDown
Next i
Sheets("The Hidden Works").Range("A2:U13").Copy.Range.ActiveCell
End With
我希望在O2和O3中所述的两个日期之间过滤一个枢轴表,并且似乎无法消除这个错误。任何帮助都将不胜感激。
Sub MyFilter()
Dim pvtfld As PivotField
Dim pvtfil As PivotFilter
Dim pvtfils As PivotFilters
Set pvtfld = ThisWorkbook.Sheets("Sheet1").PivotTables("PivotTable1").PivotFields("Date")
For Each pvtfil In pvtfld.PivotFilter
下面的代码运行良好和结果,我已经得到了我需要的价值。但是在运行过程结束时,它在“.document.getElementById("bm_ann_detail_iframe").contentDocument".”行上显示了“运行时错误'424‘对象”。
用于从:提取数据的示例url链接
Public Sub GetInfo()
Dim IE As New InternetExplorer, clipboard As Object
With IE
.Visible = False
For u = 2 To 100
.navigat
我有一个问题,从工作表的搜索记录,并显示在文本框或组合框,但得到一个错误,因为运行时错误424个对象的要求。你能帮我拿一下这个吗?
Private Sub CommandButton1_Click()
Dim x As Long
Dim y As Long
x = ThisWorkbook.Sheets("Products").Range("A" & Row.Count).End(xlUp).Row
For y = 2 To x
If Sheets("Products").Cells(y,
预期代码将运行循环并删除列b中没有单元格值的所有相应的单元格行。运行代码时,显示错误'424‘Object Required。为什么这个错误通常会出现,因为我在if语句中经常得到这个错误?
Sub cleaning()
Dim s As Worksheet
Dim r As Range
Set s = ThisWorkbook.ActiveSheet
Set r = s.Range("B:B")
r.Activate
For Each c In r
If c.Value Is Nothing Then
s.Range("B" & c.R
我目前在我的工作簿中设置了一个表单。此表单包含一个按钮。在单击按钮时,我想调用位于"ThisWorkbook“部分中的Sub。我怎么能这样做呢?
表格中的按钮..。
Sub CommandButton1_Click()
Call Main("Test")
End Sub
需要在"ThisWorkbook“中调用的子程序
Sub Main(DPass As String)
msgbox Dpass
End Sub
这将给我一个编译错误:Sub or Function not defined。这一切为什么要发生?
我在VBA和编码方面完全是新手,我试图从相同工作簿的单元格中获取数据(获取框架路径...)然后启动应用程序(QTP)并运行测试。
在尝试获取在excel单元格中输入的值时,出现以下错误:
Run Time Error '424' object required
我相信我遗漏了一些基本的规则,但我很感谢你的帮助。请参见下面的代码部分:
Option Explicit
Private Sub RunTest_Click()
Dim envFrmwrkPath As Range
Dim ApplicationName As Range
Dim TestIt
我是VBA的新手,所以对任何特别业余的错误表示歉意。
我试图对来自表单的某些用户输入运行匹配函数(变量在下面命名为client ),并使用match函数中的行存储与该行相关的用户输入。
我得到了一个
424所需对象
当我试图运行代码时出错。我在下面的代码中插入了一个注释,我认为这是错误的地方。
Private Sub OK_Test_Click()
Dim rng As Range
Dim client As String
client = LastNameSearch.Text
Set rng = OutputSheet.Range(
我想在Workbook_Open函数中初始化ThisWorksheet中的一些变量(比如图的范围)。这样做的方式如下:
Public ChartSizePosition As Range
Sub Workbook_Open()
Set ChartSizePosition = Range("B8:I25")
Worksheets("Übersicht").Range("A1").Value = "q3f"
End Sub
之后,我想从模块中的某个Sub访问变量。但是总有一个错误"Runtime 424.Obj
我是在Excel中创建宏的新手,我正处于一个困难的境地。我有一个包含48列和6000+行的woorksheet。我必须从20列和所有行中检索select数据,并将它们放入3列和相同行数的表中。例如,复制Sheet1: A2,E1,E3并粘贴到新的Sheet3: A2,B2,C2。由于电子表格的大小,以及数据未格式化以直接复制的事实,需要进行自动化
使用以下脚本时,我收到了错误424 (需要对象)。
Private Sub CommandButton1_Click()
Dim Counter As Integer
Counter = 3
Counter_H = 2
Do Until ThisWo
我有以下简单代码:
Sub newsub()
Dim currentday As Date
Dim cd As String
currentday = Format(WorskheetFunction.WorkDay(today, -1), dd / mm / aaaa)
cd = currentday
MsgBox cd
End Sub
但我得到
424错误:需要一个对象
有人能告诉我为什么会发生这种事吗?
我尝试使用下面的代码来计算一个范围内的最小值和最大值,但不断得到一个424错误对象,有人知道为什么吗?
Sub stochastic()
lr = ThisWorkbook.Sheets("Data").Cells(Rows.count, 1).End(xlUp).row
x = 2
Dim rng As Variant
Dim minimum As Double
Dim maximum As Double
While x < lr
y = x + 13
Set rng = Data.Range("D" & x & ":
我正在尝试导入一个userform,并在初始启动时显示它。然而,当试图显示它时,我总是得到一个运行时错误'424‘对象。
这是我的代码:
Sub Workbook_Open()
Dim wkbTarget As Excel.Workbook
Dim szTargetWorkbook As String
Dim cmpComponents As VBIDE.VBComponents
Application.ScreenUpdating = False
szTargetWorkbook = ActiveWorkbook.Name
Set wkbTarget = Application.W
当使用VBA过滤枢轴表时,我有一个错误
'424‘对象必需
当2022年的新记录被添加到我的Excel文件中时,我的代码停止工作。
它工作到12 (12月),但没有继续,我得到错误'424‘。
我正在尝试根据年份和月份筛选一个枢轴表。
下面是代码中不起作用的部分。
Dim pivotyear As String
Dim myPivotField As PivotField
Dim PT As PivotTable
Dim dday As Integer
Dim grantotal As Integ
此脚本遍历所有选定的工作表,并在顶部插入10个空白行。然后,它应该导出这些图纸,并将WS名称保存为csv格式。然而,我似乎得到了错误的Getting object variable or With Block variable not set。
我尝试了一些方法,但到目前为止都没有成功。
Sub Insert_Rows_Loop()
Dim CurrentSheet As Object
Dim WS As Worksheet
Dim path As String
path = ActiveWorkbook.path & "\" & Left(ActiveWo
下面的代码是我一直在为我的雇主工作的一个表单自动化项目的更大的Sub的一部分。
'the following variable is named thusly for good reason.
Dim whyareyouactinglikethis As Object
Set whyareyouactinglikethis = Workbooks("DRQ Log.xlsx").Worksheets("DRQ's")
Dim finalRow As Object
With whyareyouactinglikethis
Set final
当我试图粘贴到我当前的工作簿(下面的最后一行代码)时,我得到了一个438错误-‘对象不支持这个属性或方法’。我知道当我引用两个不同的工作簿(即使用workbook.open设置两个工作簿)时,代码可以工作,但当我尝试使用ThisWorkbook引用我自己的工作簿时,代码就失败了。有什么想法吗?不幸的是,我在论坛的其他地方找不到解决方案。谢谢。
Dim Data As Workbook
FName = Application.GetOpenFilename
Set Data = Workbooks.Open(FName)
Data.ActiveSheet.Range("A5"
我已经在excel中创建了一个复选框,当我单击复选框名称时,希望将复选框名称分配给另一个工作表中的一个单元格。
我怎么能这么做?
这是我尝试过的,但是我得到了一个错误424
Private Sub checkbox1_click()
Worksheets("Produits").Range("A1") = checkbox1.Caption
End Sub
Ps:我使用Office2019
我有个问题:当试图将工作表复制到另一个工作簿时,我得到了一个错误(错误1004 )。这是我的密码:
Sub CopyWorksheet()
Application.ScreenUpdating = False
Dim BonusRatesWB As Workbook
Dim appExcel As Application
Set appExcel = New Application
appExcel.Visible = False
Set BonusRatesWB = appExcel.Workbooks.Open("D:\Documents\Overdraft\OVERDUE c
如何使用VBA通过Excel修改打开的word文档?这里有一些我正在编写的代码,但是有一些错误我无法理解。
Dim WordDoc As Word.Document
Dim WordApp As Word.Application
'ThisWorkbook is the opened Excel Workbook through which I control Word documents.
If Len(Dir(ThisWorkbook.path & "\Report.docx")) <> 0 then
'if the
我有两张"Ark1“和"Ark2”。我从"Ark2“中获取数据并将其放入"Ark1”中。我的"Sub X“函数应该将数据与日期从水平到垂直转置。但是当我运行"sub“时,它会删除"Ark2”中的一行数据。我有所有的代码在一个模块中。
Sub x()
Dim lngDataColumns As Long
Dim lngDataRows As Long
lngDataColumns = 3
lngDataRows = 50
For t = 1 To lngDataRows
Range("l2").Offset
第22行抛出错误(设置wbPath2)
这段代码应该遍历我的工作簿中的每个工作表,当它循环时,打开另一个与当前循环迭代相关的工作簿,然后对一列求和,然后将该和放入我的原始工作簿中。我得到了对象错误91。我已经挠头好一阵子了。有人知道为什么会出现这个错误消息吗?
Private Sub PopulateData_Click()
Application.ScreenUpdating = False
Dim ws As Worksheet
Dim lastDay As Long
lastDay = Day(WorksheetFunction.EoMonth(ComboBox1.Value &am
我正在用VBA为Excel编写代码,循环遍历工作簿中所有工作表中的所有单元格,并根据它们的数值和位置打印特定的单元格。但是,我无法循环遍历特定工作表中的单元格,因为我得到了424个对象所需的错误。
我尝试过调试我的代码,很明显,当我试图在特定工作表中遍历整个单元时,问题就在嵌套循环中。
Public Sub loopThrougSheet()
Dim ws As Worksheet
Dim starting_ws As Worksheet
Set starting_ws = ActiveSheet 'remember which worksheet is active in the
我试图使用文本框中的文本(我在Excel中将它命名为tx )发送一封带有Outlook的电子邮件作为正文。
当我运行代码时,行上有一个错误:
strbody = tx.Text
错误424:所需对象
Sub SendMail()
Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem
Dim strbody As String
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(ol
我在VBA和编码方面完全是新手,如果粘贴到另一本书中满足条件,我会尝试从同一工作簿的单元格中获取数据。
在尝试获取在excel单元格中输入的值时,出现以下错误:
Run Time Error '424' object required
当我按下debug按钮时,它会移到第一行并突出显示它。我不知道为什么会发生这种情况?此外,当在监视窗口中显示a=0时。
代码是
Sub copycells()
a = ThisWorkbook.Worksheets("Sale").Cells(Row.Count, 2).End(xlUp).Row
For i =
我很抱歉,因为我是vba代码的新手。我对下面的代码有一个问题。我正在尝试打开一个文件,然后将该文件中的所有工作表复制到当前工作簿。它当前返回运行时错误424
Private Sub testGetFile()
Dim wb1, wb2 As Workbook
Dim sh As Worksheet
Set wb1 = ThisWorkbook
Set wb2 = Application.GetOpenFilename
For Each sh In wb2
sh.Copy After:=wb1.Sheets(wb1.Sheets.Count)
Next
End Sub
因此,我在尝试从API中获取方法以正确运行时遇到了问题。文档显示,该方法具有以下特性:
updateMethod(Object, String, Int)
对象是保存要更新的项的工作表或工作簿。字符串是项的名称,而Int是将发生的更新类型。
该方法实际上必须与布尔值一起使用,因为如果更新,它将返回True,否则将返回False:
wasUpdated = api.updateMethod(Object,String,Int)
所以我的代码示例是:
Function TestUpdate()
Dim wasUpdated As Boolean
Dim Container As
我试图添加一个格式化的值,从Excel添加到Outlook中的约会,基于:
我得到以下错误:
运行时错误'287':应用程序定义的或对象定义的错误
我还需要在约会中创建一个超链接,在一个单元格中使用链接,在另一个单元格中使用我想要显示的文本。
Sub MakeApptWithRangeBody()
Dim olApp As Outlook.Application
Dim olApt As Outlook.AppointmentItem
Const wdPASTERTF As Long = 1
Set olAp