我正在从C# dll中定义的excel中的VBA脚本实例化一个COM对象。我实例化的C#类有一个终结器,它执行垃圾收集,特别是它引用的其他MS Office对象,我应该看到这些对象在任务管理器中出现和消失。事实上,单元测试表明,当调用dll时,Office进程会出现,当它完成时,Office进程会消失。
当从VBA调用dll时,我注意到进程在VBA函数结束后仍保持打开状态,即对象在被调用后未被清除,这使我相信VBA不会释放COM对象。
我的函数看起来像这样:
Function Raz(inp As String)
Dim o: Set o = CreateObject("foo.ba
我试图使用下面的代码来使用VBA打开表单
Private Sub cmdEdit_Click()
Dim d As New Form_EditNote
d.txtDate.Value = EntryDate.Value
d.txtNote.Value = Note.Value
d.Visible = True
End Sub
窗体会打开,但只会在一瞬间打开。然后离开..。有什么想法吗?
我是VBA的新手,我不知道这里发生了什么。我运行这样一个简单的函数:
Function OnlyNumsRange(myRange As Range) As Range
Dim cell As Range, newRange As Range
Set newRange = myRange
Dim rng As Range
For Each rng In newRange
rng.Value = rng.Value + 10
Next
Set OnlyN
我是新的vba,无法使用户确定的工作簿-工作表保存到一个变量。我打算使用这个变量来控制循环,因为它在excel表中搜索单词。使用下面的代码片段,用户将被提示并可以选择一个文件,该文件显示为checkReport变量的字符串格式。但是支票单不会保存。
Dim CheckReport As Variant
Dim Checksheet As Object
'Open the target workbook
CheckReport = Application.GetOpenFilename("Excel-files,*.xls*", _
1, "Sel
我在Excel工作簿中有一个VBA脚本,它收集特定文件夹中所有工作簿的结果。
Private Sub Workbook_Open()
Dim path As String
Dim fso As Object
Dim folder As Object
Dim file As Object
Dim i As Integer
Dim data As Object
Set data = Worksheets("RawData")
path = data.Range("A1").Value
我正在尝试编写一个查询另一个excel电子表格的VBA ODBC连接中的ELSE结束等效项的情况。我已经尝试了所有方法,只有这样才能成功查询电子表格:
.CommandText = "SELECT Data$.CALC_POST_PERIOD='201211' FROM Data$ Data$
结果是当条件为真时,它返回-1,当条件为假时,它返回0
我如何自定义这个?
我正在试着做这样的事情
SELECT CASE WHEN Data$.CALC_POST_PERIOD='201211' THEN 'CURR_MONTH' ELSE NU
我的VBA代码有一些问题,它应该将excel数据导入我的access数据库。当我运行代码时,我会得到一个RunTime错误"Runtime 438对象不支持这个属性或方法“。从我在其他论坛上的阅读资料来看,我知道这个问题可能是一个库问题(引用一个库而使用另一个库),我对VBA有点陌生。我不知道它是否相关,但在我出现这个错误之前,我有一个"erreur 429 activeX组件无法创建对象“,这是我解决的。
下面是代码中我认为应该负责的部分。
On Error GoTo erreur
'déclaration des variables
Dim app A
我希望它从从Excel电子表格调用的VBA函数返回多个值,但始终得到error #Value!
在网络上可以找到一个例子:
Sub ReturnCellValue()
Worksheets("Sheet1").Range("A1").Value = 3.14159
End Function
此函数返回#Value!
Function ReturnCellValue()
Worksheets("Sheet1").Range("A1").Value = 3.14159
End Function
这一行代码在immedi
我已经尝试了html2canvas for single div,它工作得很好。现在我在页面上有两个图表,所以我想在单独的画布上捕获这两个div,并将其作为图像传递。我尝试跟踪,但它总是设置为未定义。我不知道问题出在哪里。当我在firebug中进入调试模式时,我发现它不是首先在html2canvas中运行,而是在ajax中运行,在执行ajax之后,它转到html2canvas。
$("#getPdf").click(function () {
var imageChart1, imageChart2;
html2canvas($('#loadchart1
早上好, 我想将Word中的地址替换为Excel单元格中的地址。 我的情况如下图所示: ? 我在Excel中有一个地址,我想粘贴到基于表格单元格内的Word括号中。 有一些解决方案: Write to Word Document from Excel VBA Pasting a String from excel to Word using word-VBA VBA from Word to Excel VBA macros: Excel to Word text replacement 这和我的情况不同。 到目前为止,我的代码如下所示: Sub RamsOpen()
Dim a
我有一些添加用户名和密码以设置用户编辑范围的vba代码。
该代码在Excel2007中运行得很好,但当我尝试在Excel2013中运行它时,我总是得到一个运行时错误1004应用程序定义或对象定义的错误。代码在set erTimeInputs行停止。我相信这是因为变量erTimeInputs的值为nothing,但是我不能让它接受一个值。我试图将它定义为各种数据类型,但似乎都不起作用。
下面是我的代码:
Sub AddUserEditRanges()
'Update username and password before running this macro
Dim UserNam
所以我想要做的是在visual basic VBA for Excel中这样做:
Dim var As String
Dim wsNew as Worksheet
Sheets.Add After:=ActiveSheet
var = Range("A34").Value
Worksheets(wsNew).Cells(1, 2) = var
但在本例中,行:Worksheets(wsNew).Cells(1, 2) = var
给出误差
运行时错误13,类型不匹配
我不想给新工作表命名字符串,因为那样的话,我总是必须重命名这些工作表。因此,是否可以使用变量名而
我希望转换成VBA代码的Excel功能,在一个按钮上工作,但我有一些麻烦,因为我是新手编码。我已经尝试过查找可以使单元格倍增的代码,并做我需要做的事情,但没有机会将它们实现到我的代码中。下面是我试图将其转换为代码的函数。如有任何帮助或建议,将不胜感激。
=SUM(G17-(G16*0.65))
Public Function Sum()
Range("G17").Value -Range("G16").Value * 0.65
End Function
我在以前的宏中使用了相同的子例程,它工作得很好,但现在它根本不能工作。
Public inputFile, outputFile as Worksheet
sub copy()
Set inputFile = excel.Workbooks.Open(get_file(".xlsb", fullpath:=True))
Set outputFile = Workbooks("Sales_Report.xlsm")
inputFile.Sheets("Planilha1").Activate 'error:
我是一个经验丰富的C/C++/Java/C#开发人员,首次在Excel 2016中尝试VBA,并使用以下完整的宏解决了一个令人困惑的问题:
Sub AddDataToSheet1()
10 Dim ws As Worksheet
20 ws = Worksheets(1)
30 ws.Activate
40 ws.Range("A1").Value = "Apple Pie"
End Sub
在第20行,它因错误而崩溃:
Runtime error '91'
Object variable or With block variable n
我得到一个VBA Excel‘编译器错误:需要对象’-错误在标记的行中。我不明白其中的原因。
顺便说一句:希望Excel支持一种不需要包装器的.Net语言。
Option Explicit
Public Type Inherit
ReqId As Integer
Parent As Integer
Depth As Integer
Path As String
End Type
Sub test()
Dim MyStructure() As Inherit
ReDim MyStructure(1 To 1000)
MyStructu
在vba中trim和trim$有什么不同?今天,当我在vba中使用left和trim函数时,编译器意外地说cant find project or library
当我在谷歌上搜索它时,在其中一个论坛上,我发现用户使用了以下内容
vba.trim("string")
他回答了函数的前缀为vba。令人惊讶的是,它在我的pc too.But上工作,我找到了这些函数
trim and trim$
left and left$
leftb and leftb$
我想知道什么是trim和trim$。我想找出不同之处,所以我开始搜索它,但结果是trim忽略了$字母表。
我只是好
我有一个C# DLL,函数(ZeorCurveDLL_Excel)以数组作为参数。我试着在Excel中调用它。但是我的VBA代码不会编译,我一直在调用这个函数的过程中得到这个错误。我可以在VBA对象浏览器中查看这个DLL函数,它看起来很好(我的意思是每个参数都在对象浏览器中被识别)。我搜索了这些问题,没有发现直接相关的问题。任何帮助都是非常感谢的。我添加了一个简单的测试函数test_sum,它在VBA调用中工作得很好。
我的C#代码段在这里
public int ZeroCurveDLL_Excel(int StartDay, int NumOfMonths, double[]
如何使python函数作用于作为参数给定的原始对象,
def f(x):
x = None
y = 1
f(y)
y # Returns 1, I want y to return None
我知道y == 1是正确的行为。我的问题是:有没有一个技巧可以让python函数的行为就像参数是通过引用传递的一样?
我试图从我从python调用的Excel函数中获取返回值。我总是得到一个None值。
下面是excel函数:
Public Function GetString()
GetString = "aa"
End Function
下面是我们的号召:
xlApp.Run('ThisWorkbook.GetString')
返回:None
我在获得指定的函数时没有问题,因为我尝试从它修改一个单元格值,并且它工作了。
我有遗漏什么吗?
我的项目是45%,我需要帮助将访问数据导出到excel电子表格,"*“是代码im有问题,我正在使用Visual 2013
我将导出access 2013表到excel 2013。
'EXPORTS表在ACCESS数据库中的应用
Dim strExcelFile As String
Dim strWorksheet As String
Dim strDB As String
Dim strTable As String
* Dim objDB As Database
strExcelFile = "|DataDirecto
VBA中有一个编译错误,如下所示:
编译错误:
在赋值的左边调用函数必须返回变量或对象。
要产生这个编译错误,只需要一个函数:
Public Function Foo(ByVal x As Integer) As Integer
Foo = x
End Function
然后,在赋值的左边调用一个函数--例如:
Public Sub Test()
Foo(42) = 12
End Sub
如果从函数的签名中删除As Integer返回类型,则得到一个返回隐式Variant的函数,编译器满足--但现在出现了运行时错误424 / "Object Requi
在VBA (Excel)中是否有一种方法可以确定用户表单的属性是模态的还是非模态的?
我以为我只需要计算属性ShowModal,但显然bolFormState = UserForm1.ShowModal不起作用(它在UserForm1.ShowModal method or data member not found上产生了错误消息)。