我最近升级到Office 365/Excel 2016已导致一些不必要的行为更改.工作簿("Portfolio Appreciation")包含一个Workbook_open过程,该过程检查Workbook("Index Returns")是否打开; 如果不是,它将打开该工作簿.
使用Excel 2007,Index Returns将在后台打开并保持在那里,这是所需的行为.它将在"窗口中",并且可以在同一Excel窗口中使用功能区选项卡Arrange All上的Window选项进行查看View.
使用Excel 2016,如果它通过Workbook_Open过程Index Returns打开,则在其自己的Excel窗口中打开,并在前面结束.(它不能再在同一个Excel窗口中查看Portfolio Appreciation).
Index Returns前面的事实是问题所在.
我尝试选择并取消选择忽略使用DDE的其他应用程序; 我尝试了这个AppActivate方法(如下面的代码所示)并使用a验证MsgBox参数是否与相关的标题栏匹配.
不知道下一步该去哪里.建议表示赞赏.
另外:不 Index Returns包含宏或连接. Portfolio Appreciation除了 Workbook_Open并且确实有一个Web查询在打开时刷新(查询下载一些股票索引的东西).
Option Explicit
Private Sub Workbook_Open()
Dim wbs As Workbooks, wb As Workbook
Dim IndexReturns As String
Dim re As RegExp
Const sPat As String = "(^.*\\DATA\\).*"
Const sRepl As String = "$1EHC\Investment Committee\indexreturns.xlsb"
Dim sTitle …Run Code Online (Sandbox Code Playgroud) 我正在使用 JavaScript API 开发 Excel 加载项以在 Excel 2016 中构建加载项。
我遇到的问题不是将 url/link 放在单元格中 - 我宁愿让这个 url 可点击(你可能知道它是通过在单元格中输入一个 url 并点击 )。
在 VBA 中,解决方案是这样的(例如):
With Worksheets(1)
.Hyperlinks.Add .Range("E5"), "http://example.microsoft.com"
End With
Run Code Online (Sandbox Code Playgroud)
不幸的是,我在 JavaScript API 中找不到超链接函数。任何的想法?
非常感谢您的帮助和最好的问候埃里克
我有一个小的excel文件,由调度应用程序每15分钟启动一次.
excel单元格中的函数从网络上的各个位置读取数据,并将其存储在此excel文件的单元格中.这一切都很完美.
然后VBA代码保存文件并执行Application.Quit.
在之前的excel版本中,它运行良好.从升级到2016年,Application.Quit关闭"excel界面",但任务管理器显示一百个"Excel.exe"仍然坐在那里,每个使用40MB的内存.
附图只显示了任务管理器中的五个excel.exe,因为此时计算机只运行了不到两个小时.但是24小时后大约有100个.所以计算机会在几天内崩溃.

感谢您的快速帮助.我不确定我是否应该通过编辑原始问题来回答我的问题.
这是代码.单元格值的实际更新在单元格本身中执行.有一个Add In,它从我们工厂的某些PLC中读取值.一切正常.
Private Sub Workbook_Open()
Application.CalculateFull
ActiveWorkbook.Save
Application.Quit
End Sub
Run Code Online (Sandbox Code Playgroud)
当它启动的excel文件时,它会更新并关闭.这已经工作了很多年,直到我们升级到2016年.Application.Quit将使excel完全消失.现在不要.
因此,我正在尝试启动 VSTO Excel 工作簿项目,但似乎无法让设计人员实际打开我为项目播种的电子表格。
设计器只显示蓝屏,不允许我实际编辑电子表格。
当我从头开始一个新项目时也会发生这种情况。
我在编辑每张工作表或整个工作簿的代码时没有任何问题,只是设计师给我带来了问题。
我正在使用 Visual Studio 2017 和 Excel 2016。
想法?
当我尝试将其插入时,会不断出现“无法插入对象”错误。这似乎是以前的Excel版本的一个已知问题,但我找不到对2016年的任何支持。
有人能做这项工作吗?
这是屏幕截图:

我正在 Excel 2016 for Mac 中运行 VBA 宏。该宏适用于使用 Excel 2016 的 Windows 平台和早于 2016 版本的 Mac 平台。尝试导出 CSV 时,该问题特定于 Excel 2016 for Mac。
该代码应该允许用户单击按钮,然后将活动工作表导出到 CSV 文件。虽然这里记录了一个类似的问题(在尝试将 XLSM 保存为 CSV 时出现“Getting "method saveas of object _workbook failed" 错误),但不幸的是,在更改xlCSV为6为他们工作时,这对我不起作用。
该代码一直运行到该ActiveWorkbook.SaveAs Filename:=newFileName, FileFormat:=6, CreateBackup:=False行,然后抛出错误:
运行时错误“1004”:对象“_Workbook”的方法“SaveAs”失败
如果我更改FileFormat为51(.xlsx) 或53(.xlsm),代码将成功完成。但是,如果FileFormat设置为6(.csv),则代码将抛出上述错误。我无法SaveAs xlCSV或xlCSVMac。
我的完整脚本如下:
Sub btnExportCSV_Click()
Dim oldFileName As String
Dim newFileName As String
Dim timeStamp …Run Code Online (Sandbox Code Playgroud) 我正在尝试将凭据嵌入到我的 SQL Server 2008R2 数据库上的帐户的 Excel 2016 工作簿中,该帐户对某些存储过程具有执行权限,以向最终用户提供只读数据。用户帐户本身无权访问数据库,其想法是将此只读帐户的凭据嵌入到 Excel 电子表格中,用户只需单击“全部刷新”即可获取从存储过程返回的最新数据.
澄清一下,我不在乎用户是否知道帐户的密码 - 这不是问题。我只是不想让他们不得不输入密码来刷新数据。
这是我迄今为止在 Excel 中尝试过的:
我不认为我会在这里输入任何内容,因为我在构建查询字符串时已经输入了凭据,但我还是输入了,因为似乎需要输入某些内容。我将 Excel 文件交给另一个用户,并且肯定拒绝了足够的访问,因为它默认使用他们当前的 Windows 登录来访问数据库。
是什么赋予了?我有一个同事有一个 Excel 2010 文件,他们可以进入并编辑连接字符串属性而不会出现问题,并且他们的文件可以工作。我怎样才能让它在 Excel 2016 中工作?
我真的很感激你们能提供的任何帮助!
编辑:这个问题似乎并不遥远..有谁知道如何做到这一点?我觉得应该很简单。
我有一堆图表,其中图表标题不适合标题框中的一行。
我不想进一步减小字体大小,而是更愿意使文本框更宽一些。
将图表标题的当前宽度打印到即时窗口,我发现它当前的宽度约为 245 像素。看到这一点,我决定使用以下代码来尝试调整工作表中给定名称的所有图表的大小:
Dim ws As Worksheet
Dim co As ChartObject
For Each ws In ThisWorkbook.Worksheets
For Each co In ws.ChartObjects
If co.Name = "Tiltaksplan" Then
co.Chart.ChartTitle.Width = 260
End If
Next co
Next ws
Run Code Online (Sandbox Code Playgroud)
然而,它似乎.ChartTitle.Width是一个只读属性,因此当我尝试更改它时,宏会停止并出现该行错误。
还有其他方法可以调整标题框的大小,还是我只能手动操作?
基本上,问题总结如下图。
“开始”列是当“描述符”变量开始时,它根据从“开始”列开始的“长度”列中的值填充行数。
在像示例这样的小数据集上使用值解决这个问题很简单,但是如何使用公式复制它?
谢谢,