我正在尝试在特定的工作表上运行宏,并在不同的工作表上启动它。 我知道我可以为每一行代码选择有问题的工作表,但我想知道为什么在使用"with语句“时它不起作用(参见下面的代码)。 Sub IncludeNew()
Application.ScreenUpdating = False
Dim wb As Workbook
Dim ws As Worksheet
Set wb = ActiveWorkbook
Set ws = Sheets("Occupancy")
With ws
.Columns("C:E").Insert Shift:
如何从Access VBA更新Excel工作簿中的.Application属性?
我正在使用Access VBA将数据导出到Excel,打开文件,并对文件进行格式化(添加公式等)。
代码很慢。我想禁用屏幕更新并将Excel计算更改为手动。
.ScreenUpdating = false不会产生运行时错误,但是屏幕会更新,就像代码被忽略一样。
.Application.Calculation产生运行时错误1004。
Dim Xl As Excel.Application
Dim XlBook As Excel.Workbook
Set Xl = CreateObject("Excel.
我正在尝试使用VBA将公式写入Excel的单元格中。我的问题是,当我在我的公式中使用分号(;)时,我得到一个错误:
Run-time error 1004
我的宏如下:
Sub Jours_ouvres()
Dim Feuille_Document As String
Feuille_Document = "DOCUMENT"
Application.Worksheets(Feuille_Document).Range("F2").Formula = "=SUM(D2;E2)"
End Sub
我试图用VBA代码更改excel文档中的切片器。到目前为止,我已经尝试了几乎所有的东西,最后总是犯同样的错误:
Run-time error '1004':
Application-defined or object-defined error
这是我当前的VBA代码。
Sub SelectSlicerValue(ByVal SlicerName As String, ByVal slicerVal As String, ByVal isSelected As Boolean)
ActiveWorkbook.SlicerCaches(SlicerName).Slice
我得到了运行时错误'1004':应用程序定义的或对象定义的错误对下面的代码(在这里,我定义lr),不能在我的生活中解决问题。
代码的目的是在定义为"ProjectDescriptionColumn“的列中搜索匹配的项目描述,并返回驻留在同一行单元格中但在定义为"ProjectCodeColumn”的列中的项目代码
任何帮助都非常感谢。
Dim ProjectDescriptionColumn As Long
Dim ProjectCodeColumn As Long
With Sheets("Completed")
If Cells(LastR
我写了一个应用程序,可以将成千上万的Excel文档转换成PDF(我知道这是一种很慢的方法,但我并不担心速度),使用的是,而不是Word。
我需要添加以下代码:
book.ResetColors();
这是在Workbook对象上。在大多数情况下,这种方法工作得很好,但对于某些文件,我会得到以下错误(发出了不相关的位):
Exception from HRESULT: 0x800A03EC
System.Runtime.InteropServices.COMException: Exception from HRESULT: 0x800A03EC
at Microsoft.Office.I
我在excel vba中有一个‘数据库’,但是当我尝试从源代码中删除一行时,按ID号选择并按delete键,它会卡在Rows(Y).Delete Shift:=xlUp上,我不知道为什么,它以前工作过,但不知怎么我弄坏了什么?
所有数据都显示在列表框中。错误消息是Run-Time error '1004': Delete method of Range failed
Dim X As Long
Dim Y As Long
X = Sheet1.Range("A" & Rows.Count).End(xlUp).Row
For Y = 2 T
我是VBA的新手,刚刚开始自学。当我尝试运行我的程序时...
Sub cpy()
range("k1:k12").Select
Selection.copy
Application.Goto Worksheets("Sheet1").range("m4").Select
ActiveSheet.Paste
End Sub
..。我得到以下错误:Unable to get the selected property of the range class。
所以我尝试单独运行出错的代码行:
Sub cck()
我正在使用Workbook_BeforeSave更新excel 2010中锁定工作表上的一些单元格。该子例程在使用ctrl-s进行保存时可以正常工作,但在vba中使用.Save时不会解锁工作表。
ThisWorkbook(代码)
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim MyPassword As String
MyPassword = "password"
ActiveWorkbook.Worksheets("Sheet1
我有一个用户表单,其中用户从一个组合框(CboCountry)中选择域,根据这个选择,我尝试将一个过滤器应用到一个现有的带有VBA的枢轴表上。我的代码如下所示,但这段代码不起作用。
如果有人能帮我处理这段代码,我会很感激的。
Dim chartType As String
chartType = cboCountry.Value
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Domain")
.Orientation = xlPageField
.Position = 1
End With
A
我一直在尝试调用VBA项目中的DLL函数,但一直收到以下错误消息:
Run-time error '453': Can't find DLL entry point "CheckStatus" in "Power.dll"
下面是C++文件中DLL的定义:
#define CLASS_DECLSPEC extern "C" __declspec(dllexport)
CLASS_DECLSPEC int __stdcall CheckStatus();
下面是我试图在VBA中声明和调用它的方式:
Public Dec
早上好,
我正在尝试创建一个函数来更改=VLOOKUP公式中的结果列。
Sub changeDay(day As Integer)
Dim ws As Worksheet
Dim lo As ListObject
Dim lColName As ListColumn
Set ws = ThisWorkbook.Worksheets("sheetName")
Set lo = ws.ListObjects(1)
Set lColName = lo.ListColumns(2)
lColName.DataBodyRange.FormulaR1C1 =
为了这个问题,我稍微缩短了代码,但我得到的错误是相同的。
当尝试选择每个工作表的A列中包含数据的单元格并对其执行操作时,在第一个工作表之后出现错误:
Sub quickSub()
Dim sh As Worksheet
For Each sh In Worksheets
sh.Range("A6", Range("A6").End(xlDown)).Select
''Random bits of code here where I manipulate selection on each worksheet
Next
End S
我很难将内置的Excel函数传递给一个单元格。它一直在返回"Run-time error '1004': Application-defined or object-defined error".
基本上,我要做的是使用VBA创建一个平均/平均的动态演算。
With Sheets("TC7_DATA")
LastColumn = .Cells(4, Columns.Count).End(xlToLeft).Column
For i = 1 To Rows.Count
If (.Cells(i, 3).Value =
我在VBA中编写了以下代码,它基本上检查单元格B24中的值是否为正,如果为正,则在重复更新X0和sqrt的情况下,遍历for -循环50次。
但是,当我调试代码时,它会引发一个错误。
'Run-time error '1004'
Application-defined or object-defined error.
我检查了语法,它看起来很好,但是错误一直在弹出。如何解决这一问题?请帮忙
Sub forloopCalc()
Dim X0, sqrt As Integer
Dim sheetName As String
sheetName = "S
下面是一个背景:我一直很喜欢VBA在Excel 2007中的多功能性,但是我正在尝试从另一个工作簿中引用一系列的单元格。更明确地说,我想创建一个从ThisWorkbook中的单元格ThisWorkbook中开始的列列表,它将从OldFile工作簿中的工作表的第一行(工作表变量是CompShtName)中获取单元格值(不同数量)。以下是我编写的代码的摘录:
CompShtName = Range("E12").Value
For Each Cell In OldFile.Sheets(CompShtName).Range("A1", Range("A1&
我正在尝试编写一个VBA脚本来根据两个单元格中的值更新数据透视表的筛选器,但我一直收到1004运行时错误。我已经尝试了基于对其他问题的答案的各种方法,但我仍然无法弄清楚问题是什么。 注意:我读到这个错误有时是因为数据透视表需要至少一个可见的值,但是即使我设置了visible = True,这个错误也会发生 VBA代码: Private Sub PageItemFilter()
Dim pvtF As PivotField
Dim pvtI As PivotItem
Dim startDate As Date
Dim endDate As Date
Dim filterDate As Date
我正在尝试使用VBA将新列/字段添加到新创建的表和新创建的数据库中,即表或数据库中绝对没有任何内容。我的代码如下: Sub test()
CurrentDb.Execute ("ALTER TABLE Table1 ADD COLUMN Column2 Text;")
End Sub 但是,这会导致以下错误消息: Run-time error '3211':
The database engine could not lock table 'Table1' because it is already in use by another
我在VBA中遇到了一个问题,就是有一行代码抛回了一个错误。
宏的作用是查找特定的单元格,然后将数据粘贴到其中。
代码如下:
'To find Column of Customer imput
For Each cell In Range("B4:M4")
If cell.Value = strLeftMonth Then
DataImportColumn = cell.Column
End If
Next
For Each cell In Worksheets("data customer mon
实际上,我正在尝试创建一些VBA代码,这些代码将在一堆带枢轴表的工作表中循环,将某些条件应用到枢轴表(即根据变量更改字段/根据单元格值更改筛选器,正如我在下面的代码中所演示的那样)。这甚至不接近运行(我是一个尝试更新遗留代码的完全初学者),所以我正在寻找如何使用为我想要的结果定义的变量的指针。
我目前的问题是,我似乎不能调用PivotTable开始更改字段等。
Option Explicit
Dim MySheet As Worksheet
Dim MyPivot As PivotTable
Dim NewCat As String
Sub RefreshPivots()
For Eac
我正在尝试编写一个使用Visual Basic和Excel对象模型在Word中转置表格的方法。然而,我在对复制的Word对象使用特殊粘贴时遇到了问题,因为它不仅仅是纯文本。
是否有可能强制使用transpose进行纯文本粘贴?有没有更好的方法来做这件事?
我当前的代码如下:
Public Sub transposeTable()
Selection.Copy
Dim oXlApp As New Excel.Application
Dim oXlBook As Excel.Workbook
Set oXlApp = CreateObject(Class:="Excel.Applicat
我创建了一个按钮,它将一个新的作业条目添加到我的职务数据库中。基于Cells (emptyRow,40)中的值,Vlookup与搜索“作业类别”工作表并输出Cells (emptyRow,43)中的结果。因此,每次我添加一个新的职务条目时,我都希望Cells(emptyRow,43)输入公式,并告诉我这属于什么任务,如下所示
Dim emptyRow As Long
emptyRow = Range("Z100000").End(xlUp).Offset(1, 0).Row
Cells(emptyRow, 43).Formula = "=IF(Cells(emptyRo
我正在尝试将一个工作表导出为PDF,但当我运行代码时,我一直收到1004错误。 我相信它链接到保存目标的文件夹路径。我尝试过以不同的方式定义文件路径,但仍然出现错误。 此代码应从单元格B1中提取文件名的一部分,并从工作表所在位置提取文件路径。PDF应保存到工作表的位置。我是VBA的新手。如有任何帮助,我们不胜感激! 以下是代码 Sub ExportAsPDFTest()
Dim Name As String
Dim Preface As String
Name = Cells(1, "B").Value
Preface = "PreR Summer 2019 -
因此,我有一个下拉列表来选择年份;2015、2016、2017等,但基于选定的年份,我希望从特定的工作表中填充单元格。因此,例如,如果选择2015年,当前工作表中的单元格K3等于2015年工作表中的单元格E12。任何帮助都将不胜感激,谢谢!
编辑:
到目前为止,我有以下VBA代码:
Option Explicit
Sub Worksheet_Change(ByVal Target As Range)
If Range("J2") = "2016" Then
Range("K3") = ActiveWorkbook.Workshe
我有以下Excel VBA代码,
Private Sub Worksheet_Calculate()
myMacro
End Sub
Public Sub myMacro()
If Range("C4").Value = "Sales" Then
Range("E4:AB5").Select
Selection.NumberFormat = "$#,##0.0"
Else
Range("E4:AB5").Select
S
我正在使用2007和VBA。我有一个代码块,当数量大于股票或股票为零时触发。
Private Sub Quantity_BeforeUpdate(Cancel As Integer)
If Me.Quantity > Me.Stock Or Me.Stock = 0 Then
MsgBox "Not enough stocks left."
Me.Quantity = ""
End If
End Sub
将出现消息框,但在此之后会出现一条错误消息:
Run-time error '2147352567
在一个工作簿中使用VBA时,我正在尝试使用Application.Run "'MyFile v0.1.xls'!ABCMacro"在另一个工作簿中运行宏。
通过阅读,我相信语法是正确的(包括单引号等),但我得到了一个1004 run-time error,它声明(大多数时候) Method 'Run' of object '_Application' failed,但在其他情况下已经声明(我现在无法获得1004消息来显示这一点,所以以下内容只是根据内存) Cannot find the file. Has it been move
我想要写一个vba函数,它以一个范围参数作为输入,并输出它得到匹配的单元格。
Function find_cell_range(slct As Range, ByVal search_name As String) As Range
Dim rg As Range
With Range(slct)
Set rg = .Find(What:=search_name, LookAt:=xlWhole, MatchCase:=True, SearchFormat:=False)
End With
Set find_cell_range = rg
我正在尝试制作一个按钮,用它自己的工作表中的一个特定单元格的名称保存我的工作簿。 我的名字来自的单元格每周都会改变它的值。我得到了错误: Run-time error '1004':
Method 'SaveAs' of object'_Workbook' failed 代码如下: Private Sub Save_file_Click()
Dim path As String
Dim filename1 As String
Dim ws As Worksheet
Set ws = ActiveWorkbook.Sheets("Fej