我正在尝试使用Excel VBA中的COM可见.NET DLL。我已经成功地使用regasm注册了DLL,然后通过VBA Developer窗口中的Tools -> References菜单项手动添加了对它的引用。
但是,我现在尝试在不使用regasm命令的情况下注册DLL,以便Excel文件可以在任何计算机上使用,而无需注册DLL。到目前为止,这是我尝试过的:
Dim JART_Instance As Object
Sub Initialize()
Dim RefPath As String, X As Byte
Const RefName = "JART x
我在C++中创建了一个64位的动态链接库。有一个Excel宏可以通过列出dll的完整路径来调用它。但是,只有在右键单击C++项目并选择Debug->Start New Instance打开包含的Excel文件时,它才能起作用。如果我直接从文件资源管理器打开Excel文件并尝试运行dll,它会给出一个“找不到文件”的消息框,提示我找不到dll,并列出了路径。在释放模式下也会出现同样的错误。但是,当我检查路径时,dll仍然存在,并且似乎可以很好地编译到指定的位置。 这还没有发生在我做过的其他dll中。无论我是从文件资源管理器还是从调试实例打开它,都可以调用类似的dll。没有任何明显的原因造
我希望能够从Excel工作表中的Java项目中执行代码。在其他地方,我发现了IKVM,它是Java的.NET实现,允许将.jar转换为.dll。我希望这样可以让我从VBA编辑器中的.jar中访问类/方法,但我在这样做时遇到了困难。
我尝试使用VBA中的declare语句(在许多不同的排列中,试图使其工作),但最常见的错误是指.DLL中的入口点。
我也尝试过将.DLL注册为Excel,但是它会给出一个样板错误,而不会注册它。
作为参考,在对整个项目进行测试之前,我一直在使用以下类对其进行测试:
public class IKVMTest {
public static void prin
我正在尝试使用Excel VBA连接到工作区服务器。使用上的信息,我产生了以下结果:
Dim obSAS As SAS.Workspace
Dim obWorkspaceManager As New SASWorkspaceManager.WorkspaceManager
Private Sub Form_Load()
Dim obConnection As New ADODB.Connection
Dim obRecordSet As New ADODB.Recordset
Dim obServerDef As New SASWorkspaceManager.ServerD
我无法让Excel 2010从SAS执行宏。我正在将数据从一些SAS表导出到Excel,它工作得很好,当我手动运行VBA宏时,它也会执行它应该做的事情,但它不会自动执行。Excel文件名为"FIH.xls“,宏名为"Opryd”,即Module1。SAS日志没有出现任何错误,Excel也没有。我已允许所有宏在Excel设置中运行。它仍然不能执行。
options noxwait noxsync;
x '"C:\FIH.xls"';
/* Putting SAS in sleep mode to give Excel the necessary t
我在使用C DLL的Excel VBA应用程序中遇到问题。DLL总是存储在电子表格上面的目录中,它的方法是从VBA内部调用的;
#If Win64 Then
Public Declare PtrSafe Function <function name> Lib "..\<dllname>" () As Long
#else
Declare Function <function name> Lib "..\<dllname>" () As Long
#end if
你可以将这两个文件和它们的目录结构打包成
我已经了解了如何使用MS Office外接程序从Excel中运行SAS存储进程(使用输入流)以获得输出。
每次运行此命令时,都会插入新的列以适应新的输出。此外,还会将其他内容添加到工作簿中。
我对SAS插件对象模型的理解很差,所以我希望有人能帮助我:
1)在再次运行该过程之前,使用VBA删除现有内容;或2)编写VBA代码,仅刷新现有内容(在相同的输出范围内)。
我使用的代码是:
Sub sasTests()
Application.ScreenUpdating = False
Dim sas As SASExcelAddIn
Set sas = Application.COMAddIns.
我在vba Excel 64位(Win8)中使用DLL函数时遇到问题。当我强制从绝对DLL路径加载函数声明时,就像下面这样,没有问题,我的代码运行良好。
Private Declare PtrSafe Function get_Ith Lib "MYPATH\CVode.dll" (ByVal lpv As LongPtr, ByVal i As LongPtr) As Double
但是,我不想要绝对路径。因此,我将dll文件放在excel文件旁边(在同一文件夹中),并声明如下所示的函数:
Private Declare PtrSafe Function get_Ith Li
(熟练使用SAS、一些SQL和一些Excel经验(没有VBA) )
我有一个场景,我希望将Excel中的数据字典分解为SAS数据。数据字典在单元格中包含Alt+Enters (换行),我希望将其分解为单独的行。
我的工具:
Windows 7上的SAS 9.4
Excel 2010
实际Excel数据(使用Alt+Enter):
Variable | Cell
Name | Value
-------------------------
Var1 | Val1 = abc <- there is an Alt+Enter