我有两个工作簿,分别名为"Sales“和"Tracker”。我想把号码打印出来。工作簿"Tracker“中"Sales”中的行数。 “追踪者”只有一张纸:“计数”。“销售有两个”:“数据”和“数据2”。我想把号码打印出来。将“数据”中的行数添加到“跟踪器”工作簿中。 下面是产生错误438的代码: Sub StoreDate()
Dim SalesWb As Workbook, TrackerWb As Workbook
Set SalesWb = Workbooks("Sales.xlsm")
Set TrackerWb
为了将一些数据从一个工作簿复制到另一个工作簿,我有一个简单的代码,如下所示:
Private Sub Workbook_Deactivate()
ThisWorkbook.ActiveSheet.RangeSelection.Copy
End Sub
但当我尝试运行它时,会出现一个消息错误:"error 438,object不支持此属性或方法“。
当我换了这个的时候,它正常工作了。有人能解释一下为什么吗?
Private Sub Workbook_Deactivate()
ThisWorkbook.Windows(1).Ran
当我试图粘贴到我当前的工作簿(下面的最后一行代码)时,我得到了一个438错误-‘对象不支持这个属性或方法’。我知道当我引用两个不同的工作簿(即使用workbook.open设置两个工作簿)时,代码可以工作,但当我尝试使用ThisWorkbook引用我自己的工作簿时,代码就失败了。有什么想法吗?不幸的是,我在论坛的其他地方找不到解决方案。谢谢。
Dim Data As Workbook
FName = Application.GetOpenFilename
Set Data = Workbooks.Open(FName)
Data.ActiveSheet.Range("A5"
我有一个宏,它在我打开工作簿时运行,直到最近它才正常工作。整件事情相当大,我不确定是宏本身造成了问题,但它在代码块中的行Set ovn3 = Range(startpunkt, sluttpunkt)上中止:
If fra <= aktivtområde.Cells(aktivtområde.Rows.Count, 1) Then
Set startpunkt = aktivtområde.Find(What:=DateValue(fra), LookIn:=xlFormulas, LookAt:=xlWhole, MatchCase:=False, After:=aktivto
我试图从工作簿中的一个工作表复制/粘贴到同一个工作簿中的另一个工作表。在试图分配范围时,我遇到了一个非常令人沮丧的错误:
运行时错误'438':Object不支持此属性或方法。
Dim c As Range
Dim ws1 As Worksheet
Dim ws2 As Range
Dim tgt As Range
Set ws1 = Sheets("Sheet 1")
Set c = ws1.Range("Named_Range").Cells(1, 1)
Set tgt = ws1.Range(c, c.Cells(10, 1))
为了从工作簿中复制工作表并将其粘贴到另一个名为“Control_de_precios”的工作簿的工作表1上,我有以下代码:
Sub createSpreadSheet()
Set NewBook = Workbooks.Add
With NewBook
.Title = "Control_precios_ddmmaaaa"
.Subject = "Control_de_precios"
.SaveAs Filename:="Control_precios_ddmmaaaa.xls"
End With
ThisWorkb
我尝试使用这段VBA代码添加一个超链接:
Sub macrotoc()
Dim sht As Worksheet
Dim targetsheet As Worksheet
Set sht = ActiveWorkbook.Sheets("TOC")
Set targetsheet = Worksheets("Monthly Enrollment")
With sht
.Hyperlinks.Add Anchor:=sht.Range("c5"), Address:="", SubAddress:=targetshe
在下面的代码中,我试图将数据从一个工作表复制到同一个工作簿中的另一个工作表。当我运行代码时,会得到运行时错误-438。
Sub Copy()
Sheets("Sheet1").Range("A1:D20").Copy
Sheets("Sheet2").Activate
Range("E1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
我有一个简单的问题:有两个工作簿,Book1和Book2,在每个工作表的第一个工作表中都有一个Image control,两者都称为Image1。但是,Image1 in Book1有一个图,而Book2中的Image1没有。
Private Sub Image1_Click()
Image1.Picture = Workbooks("Book1").Worksheets(1).Image1.Picture
End Sub
不幸的是,这会导致一个错误:
错误438 (对象不支持此属性或方法)。
然而,有趣的是,当我在Book1 (Image2)中创建另一个图像
Dim wbTarget As Workbook
Dim wbSource As Workbook
Set wbTarget = ThisWorkbook
Set wbSource = Workbooks.Open("C:\Users\alibe\Desktop\PoS\Alain.xlsx")
wbSource.Worksheets("Spain").Range("plage_sp").Copy
wbSource.Activate
Set wbTarget = ThisWorkbook
wbTarget.Worksheets("
我遇到了一个运行时错误438: Object在格式化日期时不支持此属性或方法。这对我来说没有任何意义,因为代码是非常直接的。
Sub test()
Dim timeStamp As String
timeStamp = Format(DateTime.Now, "Long Date")
MsgBox timeStamp
End Sub
格式的导致了错误,但我只是不明白为什么。
我在不同的工作簿中尝试了这段代码,它运行得非常好。
造成这一错误的原因是什么?
当我试图从一个工作簿导入值到另一个工作簿时,我得到了一个应用程序或对象定义的错误。我已经能够通过显式激活工作簿并在引用每个工作簿上的范围之前选择工作表来解决这个问题,但是如果可能的话,我想避免这种情况。这两个工作簿都是在代码的此时打开的。有什么想法吗?
这会给我带来错误:
Dim wbImport As Workbook
Dim wbReceive As Workbook
Const sExcept = "Sheet2 Name"
Const sSht = "Sheet1 Name"
Dim rExceptions As Range
wbReceive.S
我在发票工作簿中有一个发票模板工作表,我希望将其某些字段保存在另一个工作簿“仅Excel数据”工作表“发票”中。在创建发票时,我想从"Excel data only“、"Invoices”工作表A列中获取最后一个发票编号,然后将其加1。
请注意,发票编号的格式为ST00001。
之后,我想保存工作簿中的发票编号excel数据,只与它的详细信息: C10,C11和C12,它们代表总数。
我不知道怎么做,因为我是vba的新手,这就是我尝试做但没有工作的事情。
Dim v As Workbook
Set v = Workbooks("Excel data only")
我需要帮助调试我在一本工作簿上发现的一个奇怪的bug。我为一个excel文件编写了一些vba代码,它以某种方式调用了一个不同的工作簿。我举一个例子,假设我有一个名为"test1“的excel文件,这个文件有一些来自另一个工作簿的引用,名为"test2”,下面的代码仅适用于"test1“中的工作簿
lastRow = Cells(Rows.Count, 1).End(xlUp).Row ' will get the last row
MsgBox (lastRow) 'wrote this for debugging purposes
W
我是一个新手自学的VBA程序员,知道的只是足够的扩展Excel/访问文件的地方。我有一个神秘的438错误,只有当一个同事复制我的工作簿(Excel2013 .xlsm)并通过电子邮件发送给某人时,才会出现这个错误。
打开文件时,当将模块中的变量设置为工作表上的ActiveX组合框时,会出现运行时438错误。如果我点击end并重新运行Sub,它可以正常工作。
Module1:
Option Private Module
Option Explicit
Public EventsDisabled As Boolean
Public ListBox1Index As Integer
Public c
对于Excel中的模型,我希望将数据从工作簿中的一个工作表复制并粘贴到工作簿中的另一个工作表,并使用For next循环转置这些数据。工作文件CME中的数据应粘贴到RME的工作文件中。总共有2420行数据。但是,由于两个不同工作簿中的范围不同,步长也不同,我假设我应该使用两个不同的变量。当我尝试运行这段代码时,它会给我一个错误。第一个to代码是一个示例,它应该如何在没有循环的情况下手动完成。此后,循环开始。非常感谢能在这个问题上帮助我的人
我想出了以下公式:
Dim i As Long
Dim j As Long
Worksheets("CME").Range("J2
我正在尝试设置一个动态打印范围,以便在从同一工作簿中的另一个工作表中填充的工作簿中打印工作表。我好像有麻烦了。我在Name Manager中设置了一个名为“横向”的命名范围,如下所示:
=偏移(‘幻灯片单张打印横向’!$A$27,0,0,COUNTA(‘幻灯片打印横向’!$A:$A),COUNTA(‘幻灯片打印横向’!$1:1)
我被困在试图写VBA代码(我对VBA一无所知)我有这个.
Sub Printarea()
ActiveSheet.PageSetup.Printarea = "lateral"
End Sub
我得到一个错误“运行时错误'100
我正在尝试引用另一个工作表中的ActiveX checkbox控件的值。我的目标是使当前工作簿中复选框的值与另一个打开的工作簿中的值相同。
我可以在同一工作簿的不同工作表上的两个复选框之间执行此操作:
Private Sub CommandButton1_Click()
If Sheets("Sheet2").Box2.Value = True Then
Box1.Value = True
Else: Box1.Value = False
End If
End Sub
但是当我运行以下代码时,我收到运行时错误'9‘"Subscript out of
我想从另一个工作簿复制几列到当前工作簿和当前工作表,但我得到一个下标超出范围错误。我想知道是否有问题 Sub CopyColumns()
Dim SourceRange As Range
Dim DestRange As Range
On Error GoTo myerror
Set SourceRange = Workbooks("Invoice.xlsx").Worksheets("working").Columns("A:G")
Set DestRange = ThisWorkbook.Worksheets("working&
用户Peh给了我很棒的代码来将数据从关闭的工作簿复制到打开的工作簿,但现在我想做相反的事情。我希望有一个打开的工作簿,其中包含要复制的公式和值,并将这些值作为值粘贴到关闭的工作簿中。我想从打开的工作簿的"AllData“选项卡中复制range B36:K36,以便将以K1开头的值粘贴到已关闭工作簿的Sheet1中,该工作簿名为"archive.xlsx”。
这是我当前的代码(来自互联网):
Sub CopynPasteWrkBk()
Dim InputFile As Workbook
Dim OutputFile As Workbook
Dim Inpu