Tag: macos

在Mac OS X Sierra上设置DYLD_LIBRARY_PATH(CoolProp)

免责声明:这个问题开始作为一个GitHub问题 。 题 我将把X的问题放在前面: 有没有人知道一种方法来设置DYLD_LIBRARY_PATH的方式,Excel 2016将在MacOS Sierra上识别? 实际问题(Y): CoolProp的开发人员可以如何在Excel中使用其dynamic库? 背景 我正在试图让Mac的Excel 2016识别CoolProp插件使用这些说明 ,基本上归结为使用此startup.plist : <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>my.startup</string> <key>ProgramArguments</key> <array> <string>sh</string> <string>-c</string> <string>launchctl setenv DYLD_LIBRARY_PATH "/Users/$USER/Library/Group Containers/UBF8T346G9.Office"</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist> 将DYLD_LIBRARY_PATH设置为Excel可以访问dynamic库并将libCoolProp.dylib文件复制到同一目录中的位置。 不幸的是,由于SIP,似乎不能再设置任何以DYLD_开头的环境variables。 为了validation这一点,我在单元格A1中构build了一个包含此VBA函数和=ENV("DYLD_LIBRARY_PATH")的testing电子表格。 Public Function Env(Value As Variant) As String Env = […]

循环Mac OS X上的文件夹中的文件 – VBA Excel 2011

我试图通过使用VBA Excel 2011在Mac OS X上的文件夹中的文件循环。我尝试了下面的代码,但它不起作用。 Sub ListAllFilesInDir() Dim strFile As String Dim strPath1 As String strPath1 = ActiveWorkbook.FullName MsgBox strPath1 strFile = Dir(strPath1) MsgBox strFile strFile = Dir() MsgBox strFile strFile = Dir() MsgBox strFile End Sub 当程序到达第一个MsgBox strFile时,我得到活动工作簿的名称。 我读了一些使用Dir而没有参数的地方导致文件夹中的下一个文件。 但是这对我不起作用。 我得到第二个MsgBox strFile命令和一个错误(运行时错误5:无效的过程调用或参数“为第三个MsgBox strFile命令一个空的消息框。我有我试图循环通过文件夹中的4个文件。 另外,我会怎么做只列出“.xslx”文件

以编程方式添加引用会导致运行时错误

我已经为Excel (Office 2011, Mac)编写了两个VBA加载项:第一个,“基本”加载项也为第二个加载项提供函数。 还会有其他的插件在将来使用基本插件的function…应该可以运行基本的插件,第二个插件是可选的。 在第二个插件中,我试图添加一个像这样的引用: Public Sub Workbook_Open() Application.VBE.VBProjects("SecondAddin").References.AddFromFile ("BasicAddin.xlam") UseFunctionFromBasicAddin End Sub Private Sub UseFunctionFromBasicAddin() FunctionFromBasicAddin End Sub 但是,这在启动Excel时给我一个运行时错误: Run-time error 91: Object variable or With block variable not set. 在此错误之后,当我打开VBA编辑器时,我可以看到BasicAddin.xlam现在在SecondAddin中被正确地引用了 – 当我在VBA编辑器中执行UseFunctionFromBasicAddin() ,它就起作用了。 启动Excel时,它不起作用。 在VBA编辑器(工具 – >引用)中添加引用时,将加载两个加载项,但是有一个MsgBox: "This workbook is currelty referenced by another workbook and cannot be closed." 但是,我想以编程方式添加引用,因为我怀疑当在具有不同path的另一台计算机上使用插件时链接会中断? 我很乐意提供关于如何摆脱运行时错误的build议(或者是否有更好的方法来pipe理不同的加载项?)…!

将单张导出为HTML

我试图用VBA将单个表单(不是整个工作簿)导出为HTML。 当我录制一个macros导出到HTML单张,我得到这个代码: Range("C36").Select ActiveWorkbook.SaveAs filename:= _ "Macintosh HD:Users:user:Desktop:Dashboard.htm", FileFormat:=xlHtml, _ PublishOption:=xlSheet 而导出的HTML只包含我想要的表格,所以一切都很好,直到这一点。 当我尝试运行代码时,会出现问题,它会创build一个包含整个工作簿的HTML文件,而不仅仅是我想要的工作表。 我已经看过MSDN文档 ,并且SaveAs方法似乎没有PublishOption参数。 任何线索?

工作簿的大小写问题。在Excel 2016中打开使用VBA

我正在尝试编写将提示用户input.xlsx文件path的代码,然后打开该工作簿。 最后,我希望VBA从正在打开的工作簿中复制数据。 但是,我无法让VBA打开工作簿。 这是我的代码: Sub Select_File_Or_Files_Mac() Dim MyPath As String Dim MyScript As String Dim MyFiles As String Dim MySplit As Variant Dim N As Long Dim Fname As String Dim mybook As Workbook On Error Resume Next MyPath = MacScript("return (path to documents folder) as String") 'Or use MyPath = "Macintosh HD:Users:Ron:Desktop:TestFolder:" ' In […]

Mac Excel 2016 VBA – Workbook.open提供1004错误

我想获得一个在Excel 2011 for Mac中完美工作的macros,可以在Excel 2016 for mac中使用。 目标是让用户在其中指定一个.csv文件的文件夹,然后macros循环遍历所有的.csvs文件,打开每个文件,将信息从其中复制到另一个工作簿中。 试图打开用户select的文件夹中的第一个.csv文件时,macros失败,出现1004错误,无法find文件。 (注意:早些时候在macros中,workbooks.open与用户select的FILE完美协作) 这个macros是巨大的,所以我做了一个全新的小的来解决这个问题。 这里是更小的testing代码,它具有相同的失败行为: Sub Test() Dim folderpath As Variant Dim filename As Variant Dim newfilename As Variant Dim wb As Workbook Dim newfolderpath As Variant folderpath = MacScript("choose folder as string") newfolderpath = Replace(folderpath, ":", "\") MsgBox (newfolderpath) filename = MacScript("Choose file as string") newfilename = […]

通过自定义Shell函数的节点命令用32512退出

我想在Excelmacros中用VBA运行一个节点命令,在这个答案的帮助下,我想出了这个: Private Declare PtrSafe Function popen Lib "libc.dylib" (ByVal command As String, ByVal mode As String) As LongPtr Private Declare PtrSafe Function pclose Lib "libc.dylib" (ByVal file As LongPtr) As Long Private Declare PtrSafe Function fread Lib "libc.dylib" (ByVal outStr As String, ByVal size As LongPtr, ByVal items As LongPtr, ByVal stream As LongPtr) As […]

尝试读取R中的csv时不完整的最后一行

我已经在Mac OS 10.8.2上运行了R v.2.15.1。 今天早些时候,每次我尝试导入任何最近创build的(今天)csv文件,R开始向我抛出错误。 旧的(在今天之前)csv文件工作正常,但是我创build的任何东西都不会在没有警告的情况下读取。 我以同样的方式创buildcsv – 将电子表格保存为MS Excel中的.csv(Office for Mac 2011)。 即使有一个虚拟文件('test.csv'),我得到这个:“警告消息:在read.table(file = file,header = header,sep = sep,quote = quote,:由readTableHeaderfind的不完整的最后一行'test.csv'” 在TextEdit中,test.csv是: cat,stuff 1,1 2,2 我已经尝试在每行的末尾input(如在这里build议: 尝试读取.csv文件到R中时“不完整的最后一行”警告 ),但这不起作用。 我重新安装了R和Microsoft Excel。 奇怪的是,我可以读取csv文件,而没有R的Windows机器上的警告。在另一台Mac R和RStudio,我得到相同的警告… 我知道这只是一个警告,但这让我有点紧张,似乎有可能在未来引起问题。

SaveAsfunction在Microsoft PC上工作,但不在MAC上

我有VBA代码,控制用户保存除.xls,.xlsm或.pdf以外的任何其他格式的文件。 这是为了防止在保存过程中剥离macros。 我已经插入一行来检查操作系统是否是在其他macros中工作的OSx(…就像“ Mac ”),但不是这个。 该过程失败,“可以find文件对象或库”与“msoFileDialogSaveAs”突出显示。 这是我的代码: Option Explicit Option Compare Text Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _ Cancel As Boolean) Dim fso As Object 'FileSystemObject Dim PdfSave As Boolean Dim SheetName As String If Not Application.OperatingSystem Like "*Mac*" Then SheetName = ActiveSheet.Name 'Save-As action? If SaveAsUI Then Set fso = CreateObject("Scripting.FileSystemObject") 'Abort excel's […]

如何在Mac Excel 2011上创build网页查询?

我试图从我的工作表上的网站导入数据,但是当我点击一个新的数据库查询导入数据时,它显示一个错误的说: “未安装Microsoft Query” 我search了每一个地方,但找不到解决scheme。 请帮我解决