标签: excel-vba-mac

Excel 2013 VBA清除所有过滤器宏

似乎较旧的宏不起作用.我有适当的安全设置来运行VBA宏,但是当我尝试了一些方法来清除工作表上的所有过滤器时,我收到编译错误.

这是我尝试过的:

__PRE__

我在工作表上有按钮以清除所有过滤器,以方便用户使用,因为工作表上有很多带有过滤器的列.

excel vba excel-vba excel-vba-mac

38
推荐指数
8
解决办法
41万
查看次数

有没有办法在Excel VBA中创建文件夹和子文件夹?

好的,对于那些知道Excel VBA主人的人来说,我有一个公司的下拉菜单,由另一个选项卡上的列表填充.三列,公司,工作号和部件号.

我要做的是,当创建一个作业时,我需要一个文件夹来创建所述公司,然后根据所述部件号创建一个子文件夹.所以,如果沿着这条路走下去,它会是这样的:

__CODE__

现在,如果存在公司名称或部件号,则不创建或覆盖旧的名称.转到下一步.因此,如果两个文件夹都不存在,则如果一个或两个不存在则按要求创建.

这有意义吗?

如果有人可以帮助我了解它的工作原理以及如何使其工作,我们将不胜感激.再次感谢.

另一个问题,如果不是太多,有没有办法让它在Mac和PC上运行相同?

excel vba excel-vba-mac

27
推荐指数
4
解决办法
19万
查看次数

检查是否选中了基于工作表的复选框

我正在尝试使用IF子句来确定是否选中了名为"Check Box 1"的复选框,以便在我的程序中进一步使用.

我目前的代码:

Sub Button167_Click()
 If ActiveSheet.Shapes("Check Box 1") = True Then
 Range("Y12").Value = 1
 Else
 Range("Y12").Value = 0
 End If
End Sub
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用,但调试告诉我有一个问题

ActiveSheet.Shapes("Check Box 1")
Run Code Online (Sandbox Code Playgroud)

但是,我知道这段代码有效(即使它有不同的用途):

ActiveSheet.Shapes("Check Box 1").Select
With Selection
.Value = xlOn
Run Code Online (Sandbox Code Playgroud)

编辑:如果需要更多信息,我的复选框(我的页面上有200个)位于sheet1中,名称为"Demande".每个Checkbox都具有相同的格式名称"Check Box ...".

所有帮助将不胜感激.谢谢

checkbox excel vba excel-vba-mac

20
推荐指数
3
解决办法
9万
查看次数

Office 2011 for Mac中的VBA Shell功能

我试图从Word 2011 for Mac中的VBA宏启动一个shell脚本,该脚本将在终端窗口中运行.我尝试过使用Shell函数和MacScript函数,但在任何一种情况下,VBA解释器似乎都无法找到该脚本.

根据VBA参考文档,以下内容应该有效:

 RetVal = Shell("Macintosh HD:Applications:Calculator.app", vbNormalFocus)
Run Code Online (Sandbox Code Playgroud)

这会产生运行时错误53'找不到文件'.

有什么建议?

macos shell vba excel-vba-mac

15
推荐指数
2
解决办法
2万
查看次数

如何从VBA(Excel)调用Bash脚本

如何bash在MAC OSX上使用VBA 运行文件

我尝试了以下代码

location = FolderPath(ThisWorkBook.FullName) 
Run Code Online (Sandbox Code Playgroud)

它返回当前目录减去文件名.

其次是

Shell(location &"runmybatch.sh")
Run Code Online (Sandbox Code Playgroud)

我这样做是因为bash脚本与excel电子表格位于同一文件夹中.

macos bash vba excel-vba-mac

14
推荐指数
1
解决办法
1万
查看次数

Dir()函数在Mac Excel 2011 VBA中不起作用

您好我正在尝试列出Excel工作簿所在的子目录中的所有文件.由于某种原因,代码无法执行超出Dir函数.任何人都可以建议吗?谢谢!

Sub ListFiles()

    ActiveSheet.Name = "temp"

    Dim MyDir As String
    'Declare the variables
    Dim strPath As String
    Dim strFile As String
    Dim r As Long

    MyDir = ActiveWorkbook.Path 'current path where workbook is
    strPath = MyDir & ":Current:" 'files within "Current" folder subdir, I am using Mac Excel 2011

    'Insert the headers in Columns A, B, and C
    Cells(1, "A").Value = "FileName"
    Cells(1, "B").Value = "Size"
    Cells(1, "C").Value = "Date/Time"

    'Find the next available row
    r = Cells(Rows.Count, "A").End(xlUp).Row + …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba excel-vba-mac

13
推荐指数
1
解决办法
3万
查看次数

如何开发包含正则表达式的Excel宏,以便它可以在Windows和Mac中运行

我开发了一个使用的Excel 2010 VBA宏VBScript.RegExp.我的一个用户显然使用支持VBA的Excel Mac 2011,但没有VBScript.RegExp.

我看过几篇提到它的帖子可以创建你自己的RegEx函数AppleScript,可以由VBA宏调用.但是,似乎必须有Mac版本的Excel文件和Windows版本.这不太理想.

是否有另一种方法可以在VBA中实现与Windows和Mac兼容的正则表达式?

regex excel vba excel-vba excel-vba-mac

13
推荐指数
1
解决办法
4350
查看次数

Mac上的VBA(Excel)词典?

我有一个Excel VBA项目,它大量使用Windows Scripting Dictionary对象.我最近有一个用户尝试在Mac上使用它并收到以下错误:

Compile Error: Can't find project or library
Run Code Online (Sandbox Code Playgroud)

这是使用Tools > References > Microsoft Scripting Runtime库的结果.

我的问题是,有没有办法让这项工作在Mac上

以下是我认为可能的解决方案的3个案例:

  1. 使用支持在Mac上使用词典的Mac插件(如果存在,我最喜欢的选项)
  2. 做一些如下变量开关:

    isMac = CheckIfMac
    If isMac Then
        ' Change dictionary variable to some other data type that is Mac friendly and provides the same functionality 
    End If
    
    Run Code Online (Sandbox Code Playgroud)
  3. 写2个完全独立的例程来做同样的事情(请让这不是需要发生的事情):

    isMac = CheckIfMac
    If isMac Then
        DoTheMacRoutine
    Else
       DoTheWindowsRoutine
    End If
    
    Run Code Online (Sandbox Code Playgroud)

macos excel vba dictionary excel-vba excel-vba-mac

13
推荐指数
3
解决办法
1万
查看次数

如何从Excel VBA for Mac发出HTTP GET

我需要从Excel for Mac 2011向Web服务发出带有查询字符串的HTTP Get.我已经看到了使用QueryTables的答案(如何使用VBA从Excel向服务器发送HTTP POST请求?)但是使用POST方法,而不是GET方法.我也看到从Windows机器上很容易,但我被卡在了Mac上.

有什么建议,还是没有希望?

excel vba http-get excel-vba excel-vba-mac

12
推荐指数
2
解决办法
2万
查看次数

如何检查哪一行VBA代码导致错误

我正在尝试调试我编写的长代码,我需要逐行执行.

问题是我在Mac上,并且在这种情况下不知道如何使用F8.谁能告诉我怎么能这样做呢?我怎么知道哪条线导致执行问题?

debugging vba excel-vba-mac

11
推荐指数
3
解决办法
3万
查看次数

标签 统计

excel-vba-mac ×10

vba ×10

excel ×7

excel-vba ×5

macos ×3

bash ×1

checkbox ×1

debugging ×1

dictionary ×1

http-get ×1

regex ×1

shell ×1