如何在MAC上用python打开Excel实例?

2024-04-15

我认为这个问题之前已经被问过,但还不清楚,在最初的问题中,用户提供了 excel.exe,它是 Windows 可执行扩展,不适用于 mac。

  • 我需要在 MAC 上用 Python 打开新的 Excel 实例。

我应该导入哪个模块?

我是一个新手,我已经完成了 python 语言的学习,但在理解文档方面遇到困难。


如果您所需要做的只是启动 Excel,那么最好的方法是使用 LaunchServices 来执行此操作。

如果你有PyObjC(如果您使用 Apple 在 10.6 及更高版本上预装的 Python,则需要执行此操作;否则,您可能需要安装它):

import Foundation
ws = Foundation.NSWorkspace.sharedWorkspace()
ws.launchApplication_('Microsoft Excel')

如果没有,您可以随时使用open tool:

import subprocess
subprocess.check_call(['open', '-a', 'Microsoft Excel'])

无论哪种方式,您都可以有效地启动 Excel,就像用户双击 Finder 中的应用程序图标一样。

如果您想让 Excel 执行一些简单的操作(例如打开特定文档),那也并不困难。看着那(这NSWorkspace http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSWorkspace_Class/Reference/Reference.html or open https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/open.1.html文档来了解如何做你想做的事情。

如果你真的想controlExcel——例如,打开一个文档,进行一些更改,然后保存——您将需要使用它的 AppleScript 界面。

苹果推荐的方法是通过ScriptingBridge https://developer.apple.com/documentation/Cocoa/Conceptual/ScriptingBridgeConcepts/,或使用双语言方法(编写AppleScripts并通过NSAppleScript https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSAppleScript_Class/Reference/Reference.html——在 Python 中,你可以通过PyObjC)。但是,我可能会使用appscript http://appscript.sourceforge.net(从获取代码here https://github.com/abarnert/appscript)。尽管它已被其原始创建者放弃,并且仅得到稀疏维护,并且最终可能会停止与某些未来的 OS X 版本一起使用,但它仍然比官方解决方案要好得多。

这是一个示例(未经测试,因为我这里没有 Excel):

import appscript
excel = appscript.app('Microsoft Excel')
excel.workbooks[1].column[2].row[2].formula.set('=A2+1')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在MAC上用python打开Excel实例? 的相关文章

  • 如何以“正确”的方式处理带有空字节的 Python unicode 字符串?

    Question PyWin32 似乎很乐意将 null 终止的 unicode 字符串作为返回值 我想以 正确 的方式处理这些字符串 假设我得到一个像这样的字符串 u C Users Guest MyFile asy x00 x00sy
  • 使用 python 中的公式函数使从 Excel 中提取的值的百分比相等

    import xlrd numpy excel Users Bob Desktop wb1 xlrd open workbook excel assignment3 xlsx sh1 wb1 sheet by index 0 colA co
  • Pandas:GroupBy 到 DataFrame

    参考这个关于 groupby 到 dataframe 的非常流行的问题 https stackoverflow com questions 10373660 converting a pandas groupby object to dat
  • 没有名为 StringIO 的模块

    我有Python 3 6 我想从另一个名为 run py 的 python 文件执行名为 operation py 的 python 文件 In operation py I do from cStringIO import StringI
  • xcode 4 垃圾收集已删除?

    我正在学习 Xcode 和 Objective C 但是我正在阅读的书使用的是旧版本 3 2 的 Xcode 其中一章完全致力于内存和泄漏 说我需要通过 项目设置 gt 构建 打开垃圾收集 但是 我找不到垃圾收集设置 它已被删除还是我只是错
  • Emacs 24.x 上的 IPython 支持

    我对 IPython 与 Emacs 的集成感到困惑 从 Emacs 24 开始 Emacs 附带了自己的python el 该文件是否支持 IPython 还是仅支持 Python 另外 维基百科 http emacswiki org e
  • 如果在等待“read -s”时中断,在子进程中运行 bash 会破坏 tty 的标准输出吗?

    正如 Bakuriu 在评论中指出的那样 这基本上与BASH 输入期间按 Ctrl C 会中断当前终端 https stackoverflow com questions 31808863 bash ctrlc during input b
  • Django send_mail SMTPSenderRefused 530 与 gmail

    一段时间以来 我一直在尝试使用 Django 从我正在开发的网站接收电子邮件 现在 我还没有部署它 并且我正在使用Django开发服务器 我不知道这是否会影响它 这是我的 settings py 配置 EMAIL BACKEND djang
  • 在 Windows 上使用 apache mod_wsgi 运行 Flask 应用程序时导入冲突

    我允许您询问我在 Windows 上使用您的 mod wsgi portage 托管 Flask 应用程序时遇到的问题 我有两个烧瓶应用程序 由于导入冲突 只有一个可以同时存在 IE 如果请求申请 1 我有回复 然后 如果我请求应用程序 2
  • Geodjango距离查询未检索到正确的结果

    我正在尝试根据地理位置的接近程度来检索一些帖子 正如您在代码中看到的 我正在使用 GeoDjango 并且代码在视图中执行 问题是距离过滤器似乎被完全忽略了 当我检查查询集上的距离时 我得到了预期距离 1m 和 18km 但 18km 的帖
  • 如何在 pandas 中使用 read_fwf 跳过空行?

    I use pandas read fwf http pandas pydata org pandas docs stable generated pandas read fwf htmlPython pandas 0 19 2 中的函数读
  • Python:IndexError:修改代码后列表索引超出范围

    我的代码应该提供以下格式的输出 我尝试修改代码 但我破坏了它 import pandas as pd from bs4 import BeautifulSoup as bs from selenium import webdriver im
  • 使用“默认”环境变量启动新的子进程

    我正在编写一个构建脚本来解析依赖的共享库 及其共享库等 这些共享库在正常情况下是不存在的PATH环境变量 为了使构建过程正常工作 让编译器找到这些库 PATH已更改为包含这些库的目录 构建过程是这样的 加载器脚本 更改 PATH gt 基于
  • Laravel/Homestead - OSX - Vagrant 连接超时

    Problem 我正在尝试让 Laravel Homestead 在我的 Mac Book Air 上运行 我已按照以下指示进行操作http laravel com docs 4 2 homestead http laravel com d
  • SocketIO + Flask 检测断开连接

    我在这里有一个不同的问题 但意识到它可以简化为 如何检测客户端何时从页面断开连接 关闭其页面或单击链接 换句话说 套接字连接关闭 我想制作一个带有更新用户列表的聊天应用程序 并且我在 Python 上使用 Flask 当用户连接时 浏览器发
  • 在系统托盘中隐藏 tkinter 窗口 [重复]

    这个问题在这里已经有答案了 我正在制作一个程序来提醒我朋友的生日 这样我就不会忘记祝福他们 为此 我制作了两个 tkinter 窗口 1 First one is for entering name and birth date 2 Sec
  • 动态过滤 pandas 数据框

    我正在尝试使用三列的阈值来过滤 pandas 数据框 import pandas as pd df pd DataFrame A 6 2 10 5 3 B 2 5 3 2 6 C 5 2 1 8 2 df df loc df A gt 0
  • 混淆矩阵不支持多标签指示符

    multilabel indicator is not supported是我在尝试运行时收到的错误消息 confusion matrix y test predictions y test is a DataFrame其形状为 Horse
  • TKinter 中的禁用/启用按钮

    我正在尝试制作一个像开关一样的按钮 所以如果我单击禁用按钮 它将禁用 按钮 有效 如果我再次按下它 它将再次启用它 我尝试了 if else 之类的东西 但没有成功 这是一个例子 from tkinter import fenster Tk
  • Apache Beam Pipeline 写表后查询表

    我有一个 Apache Beam Dataflow 管道 它将结果写入 BigQuery 表 然后我想查询该表以获取管道的单独部分 但是 我似乎无法弄清楚如何正确设置此管道依赖性 我编写的新表 然后想要查询 与一个单独的表连接以进行某些过滤

随机推荐

  • 分页:找出项目所在的页面(给定主键和排序顺序)

    假设我像这样进行分页 SELECT article id article content FROM articles ORDER BY article rating OFFSET page 1 items per page LIMIT it
  • git push origin 和 git push origin master 有什么区别

    将本地 git 存储库的 master 分支推送到名为 origin 的远程存储库的 master 分支有什么区别吗 git push origin master或与git push origin 默认动作为git push and git
  • Go中如何使用剪贴板?

    如何使用 Go 复制到剪贴板或从中获取数据 我有点担心有文档中没有结果 http golang org search q clipboard and 谷歌给了我这个结果 https groups google com forum msg g
  • OpenGL alpha 测试 - 如何替换已弃用的 AlphaFunc?

    我正在尝试用 Alpha 绘制球体 但我的 Z 缓冲区有问题 有些像素是透明的 但会写入 Zbuffer 因此后面的不透明像素会被隐藏 这是我的设置 gl Enable gl DEPTH TEST gl DepthFunc gl LEQUA
  • 哪些 Java 库可用于生成 KML? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何正确计算两个日期之间的实际月份数?

    我已经按照方法getDiffDateMap计算两个日期之间的差异并返回Map分别表示毫秒 秒 分钟 小时 天 月和年的整数 public static Map
  • 业务逻辑是主观的吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 Visual Studio 2013 和 Intel Fortran 编译混合 C++/C 代码

    我正在尝试编译一个简单的 C Fortran 混合程序 但存在链接问题 我使用的是Visual Studio 2013 Ultimate和Intel Visual Fortran Compiler XE 14 该程序非常简单 是从网上的某个
  • 我正在制作 PEMDAS 求解器,但不知道该写什么

    我正在尝试做一个PEMDAS https en wikipedia org wiki Order of operations用户输入 PEMDAS 问题的求解器 例如 他们输入 4 4 2 5 程序就会为他们解答 是否有任何代码可以让 py
  • OnNewText 事件后何时重绘 VirtualTreeView?

    我使用此代码来填充 VirtualStringTree 并允许重命名项目 Structure for the tree struct TVSTdata UnicodeString Name Initialization o
  • 如何停止散景服务器?

    我确实使用散景来绘制本地 LAN 上的实时传感器数据 Bokeh 是使用 popen 从我的 python 应用程序中启动的 Popen bokeh serve host localhost 5006 host 192 168 8 100
  • V100 和 P100 在 Google Compute Engine 上的可用性

    描述 我刚刚尝试了一段时间 使用我的个人帐户设置或保留用于机器学习的虚拟机 我在 n1 上使用了几个月 具有大约 8 GB 或更多 GB RAM 以及用于机器学习的 P100 或 V100 现在尝试了至少一半具有 P100 V100 可用性
  • 使用 bash 添加文件扩展名

    使用 bash 将文件扩展名 jpg 添加到无扩展名文件的好方法是什么 Strip jpg from all filenames for f in jpg do mv f f jpg done Add jpg to all filename
  • 这个符号在 php 中的对象或空值中意味着什么[重复]

    这个问题在这里已经有答案了 您能解释一下运营商做什么吗 gt 在 PHP 中做 因为我有这段代码 drive objDrive gt func gt getDriver gt value 目前只是一个提案 你可以去找找在此输入链接描述 ht
  • 在 Docker 容器中运行数据库的性能问题

    有没有人注意到在 docker 容器中运行数据库 MySQL 或 Postgres 有任何性能问题 我被告知会发生严重的性能下降 请指教 Docker 本身带来的开销非常小 它只是将进程与主机上的其他进程隔离 但是 您可以采取多种措施来降低
  • Dask“没有名为 xxxx 的模块”错误

    使用dask分布式我尝试提交一个位于另一个名为worker py的文件中的函数 在工人中我有以下错误 没有名为 worker 的模块 但是我无法弄清楚我在这里做错了什么 这是我的代码示例 import worker def run self
  • StaleDataException:尝试在关闭游标后访问它

    FATAL EXCEPTION main Process com example lenovo phone PID 4885 android database StaleDataException Attempted to access a
  • 如何访问具有相同名称的不同表的多个mysql行

    我认为我已经接近解决方案 但还没有完全明白 我想做的是从两个不同的表中获取product naam和categorie naam 下面的代码为我提供了两者的 naam 我可以访问它们 但现在我想要产品中的所有内容 而不仅仅是名称 然后我不知
  • 使用 sinon 断言使用所需参数进行了特定的存根调用

    假设您正在测试一个函数 该函数将使用不同的参数多次调用依赖项 var sut ImportantFunction function dependency dependency a 1 dependency b 2 使用QUnit Sinon
  • 如何在MAC上用python打开Excel实例?

    我认为这个问题之前已经被问过 但还不清楚 在最初的问题中 用户提供了 excel exe 它是 Windows 可执行扩展 不适用于 mac 我需要在 MAC 上用 Python 打开新的 Excel 实例 我应该导入哪个模块 我是一个新手