我在VBA中安装了一个小宏,以便将表保存为Excel中的PDF格式。这是我写的代码:
Sub ExportPDF()
Dim File_name As String
File_name = "C:\Test\" & _
"Rapport du " & Date & "_Assurances.pdf"
Sheets("Assurances.Rapport").Select
Dim Last_row As String
Last_row = "
如何从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.
在excel VBA中,我似乎找不到这么简单的工作
我有关于手机A1的数据
Sub TestBox()
ActiveSheet.Activate
MsgBox (Cells(0, 0).Value)
End Sub
我想要输出这些数据,基本上使用一个msgBox
运行时错误:“1004”应用程序-defined或对象定义错误
我的代码是
With ActiveSheet
.AutoFilterMode = False
.Range("23:23").AutoFilter
End With
这在Excel2010中工作得很好,但是使用Excel2016我得到:-
Range类的运行时错误'1004‘AutoFilter方法失败
此外,我还可以手动单击中的filter图标(在Data >Filter下),但不能用VBA代码来实现。
任何想法都很受欢迎。
我收到关于VBA “运行时错误'1004':对象'_Application‘失败的方法'OnKey’”的报告,至少在Excel2016中,在此代码中是这样的:
Private Sub Workbook_Deactivate()
Application.OnKey "^x"
End Sub
(当启用VBA的工作簿处于活动状态时,代码会重写某些热键,并在用户切换回其他工作簿时恢复默认行为。)
可能是什么原因?
下面的代码在Excel2016上运行良好,但在'If (Not Rng.Pivotcell)‘上给出了一个Object Defined 1004错误
Microsoft脚本运行时作为参考处于活动状态。这之前已经为我修复了1004错误,但在这个错误中,我感到困惑。
''Returns true if the column belongs to a pivot or not
Public Function ColumnBelongsToAPivot(ByVal ColumnLetter As String, ByVal RowIndex As Long, ByVal Use
我已经创建了用于在文件夹中保存excel工作簿的vba代码。但我得到运行时错误1004,当已经存在的文件被打开,其他相同的excel工作簿也被创建。
Private Sub CommandButton14_Click()
Dim folderpath As String
Dim Fname As String
Dim file As String
Fname = MyForm.SCC.Value
folderpath = ActiveWorkbook.Path
Workbooks.Open Filename:= _
我正在使用MS Excel 2016。在VBA代码下面抛出一个错误
运行时错误1004应用程序定义或Obj定义错误
我想数一下AT栏中的空格数,如果有空格,我想用"Nill“替换它。这张纸上有29000行。
Sub FillBlanks()
Dim cnt As Long
cnt=Range("AT:AT").Cells.SpecialCells(xlCellTypeBlanks).Count
On Error Resume Next
MsgBox cnt
End Sub
我在另一个答案中找到了这个
Sub UpdateQueryConnectionString(ConnectionString As String)
Dim cn As WorkbookConnection
Dim oledbCn As OLEDBConnection
Set cn = ThisWorkbook.Connections("database")
Set oledbCn = cn.OLEDBConnection
oledbCn.Connection = ConnectionString
End Sub
我似乎收到一个关于Set oledbCn =
我最近从Mac2011的Excel升级到了Mac2016的Excel,发现了一个bug。我想知道是VBA Excel for Mac 2016出现了这个问题,还是其他计算机也出现了这个问题。
Dim gg As Range
Set gg = Range("a1:s16000")
gg.Replace What:=ChrW(&H1D48), Replacement:="|d", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
此代码将正确地将heyᵈ更改为hey|d。但它会错误地将dude
我在窗户上写了一个VBA宏。这个宏根据一个单元格的值将图片添加到我的excel工作表中,例如“Image.png”。这些图像与我的Excel工作簿位于同一个目录中。VBA将获得工作簿的路径,并使用它查找单元格中指定的图像。这在windows上有效,但在mac上却不起作用。宏返回一个错误(1004),表示它找不到指定的文件。
Sub InsertImage()
Dim useless As Double
Dim clTop As Double
For Each c In ActiveSheet.Range("C3:C200").Cells
I
我有一个VBA,连同许多其他东西,将一个excel工作簿保存到SharePoint (我认为是企业2010 ),它大部分时间运行良好,但在用户运行VBA时,Excel会冻结,弹出显示“获取可用内容类型和属性的列表.”。如果用户选择取消另一个弹出,则出现“运行时错误'1004':对象'_Workbook‘的方法'SaveAs’失败。如果用户选择”Debug“,则VBA的最后一行突出显示为创建错误。
Dim fileName As String
Dim excelDirName As String
fileName = [c9]
excelDirName = [c
我已经尝试了一切,包括阅读论坛上关于错误1004应用程序定义或对象定义错误的许多问题,但是我找不到任何帮助我修复错误的东西。它在直接的window.Here中写入正确的公式是代码。我把代码中的错误放在了哪里。
变量定义如下所示,在错误1004发生时,我已经将这些值包含在“监视”窗口中
Dim templateName As String ' = "Company 1" and yes this worksheet exists in my file
Dim servicesRow As Integer ' = 22
Dim j as
因此,我有一个下拉列表来选择年份;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
ActiveWorkbook.SaveCopyAs Filename:给予
运行时错误1004
但是按下Debug>Run>继续代码就像预期的那样运行。
我有一个宏启用Excel2016电子表格。当更新和保存到PC时,我也希望保存一个副本到我的NAS。我为另外两个电子表格编写了代码(见下文),并使用了文件名以外的相同代码。其他两个电子表格按预期方式保存(即NAS和PC,没有运行时错误)代码如下:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Saves t
我试图在VBA中加载'Microsoft 14.0对象库‘。
我正在使用Mac和Excel 2016。
Sub MyPPT()
Dim VBProj As VBIDE.VBProject
Set VBProj = ThisWorkbook.VBProject
VBProj.References.AddFromFile Environ("systemroot") & "/system32/Microsoft PowerPoint.tlb"
Set VBProj = Nothing
End Sub
我得到了
运行时错误“48”:
加载DLL
如何从VBA运行java类。我正在尝试使用Excel VBA发送到服务器。我只能在PC上使用VBA来做这件事,但是当使用MAC时,DomDocument对象返回一个编译错误。所以我所做的是创建一个java类,它将发布和获取来自服务器的响应。现在,我要做的是让VBA运行java类,等待返回代码并处理返回。如果这可以用一种不同的语言(然后是Java)来完成,我也对此持开放态度。但我们更喜欢Java。
我试着用
Dim obj as Object
Set obj = GetObject("java:SendXML") '(sendXML is class name)
但是
在将Excel工作簿转换为CSV时,我的VBA脚本出现了错误。VBA脚本通过Microsoft脚本运行。
Private Sub CommandButton1_Click()
Dim objExcel As New Excel.Application
Dim wb_xl As Excel.Workbook
Dim wb As Excel.Worksheet
Set wb_xl = objExcel.Workbooks.Open("O:\documents\folder.xlsx")
wb_xl.SaveAs FileName:="O:\documents\folde
我在Access 2010中有一些VBA,可以运行查询并将结果导出到Excel的列中。这里的目标是,当用户按下所需的按钮时,将打开一个excel工作簿,如果它不存在,则创建它。创建新工作簿时,VBA会按预期执行。我遇到的问题是工作簿何时已经存在。
因此,在我创建了一个设置我的excel应用程序对象后,我尝试打开工作簿。当它不存在时,会发生1004错误,并且我有以下错误处理程序:
Select Case Err
Case 1004 'Workbook doesn't exist, make it
xl.Workbooks.Add
Set wb
我遇到了一个小问题。我想用VBA删除一些行,但我希望避免使用Activate或select语句。问题是,如果我不激活工作簿,我的代码在删除或复制行时会返回一个错误。
With Template.Worksheets("1").Range("A3").CurrentRegion
rCountS = .Rows(.Rows.Count).Row
.Range("A4", Cells(rCountS, 1)).EntireRow.Delete
End With
.Range部件在下面返回一个错误:
运行时错误“1004”:应用程序定义的或对象定义的
我得到了一个在Win10和Excel 2016上运行良好的脚本。我使用它根据Excel工作表对文件进行重命名/编号。
但在Mac上,我必须确认每个文件的访问权限。因为我有超过3000个文件要编号,这是不可能的。这与Mac的沙盒技术有关。GrantAccessToMultipleFiles是关键字。有没有人可以帮我完成这个脚本,让我不必确认每个文件的重命名?
sub Test()
iPath = "c:temp"
lr = cells(rows.count, "A").end(xlup).row
for i = 1 to lr
name iPath
我有一个宏文件,其中有一段代码,它试图在VBA中使用ActiveWorkbook.SaveAs将.csv文件保存为.xls文件。
实际上,我打开了一个excel文件,现在我从命令提示符将".csv"文件路径和"Macro.xls"文件作为参数传递给Excel.exe。首先,它启动.csv文件,在Macro.xls的最后一段代码中,我发现".csv"文件被保存为".xls"."c:\\1\\2\\dummy.csv" to "c:\\1\\2\\dummy.xls"。
当使用文件名"c:\\1
我希望在指定表的每一行中执行目标搜索。下面的VBA代码成功执行了GoalSeek。 Sub GoalSeek()
Dim lo As ListObject
Dim rw
Set lo = Sheet1.ListObjects("Table1")
For rw = lo.DataBodyRange.Rows.Count To 1 Step -1
Range("M" & rw).GoalSeek Goal:=Range("N" & rw).Value, ChangingCell:=Range("E" &