问题标签 [openxml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用 OpenXML SDK 在 Excel 电子表格中创建单元格注释
我正在尝试向 Excel 2007 电子表格中的单元格添加注释。我正在使用 OpenXml SDK 2.0 来执行此操作。
我的用例是这样的:我创建了一个模板 Excel 文件,我将其复制并用作我的起点,而不是从头开始创建一个 OpenXML 文档。我的模板文件在单元格 A1 中有注释,因此 Excel 已经为我创建了 WorksheetCommentPart。
现在我的问题是,当我将评论节点添加到评论部分时,电子表格不会加载,Excel 会询问我是否要恢复。
真正困扰我的是我在 A1 中的原始评论仍然存在,但我以编程方式添加的任何评论都消失了!
这是我正在使用的代码:
使用 (MemoryStream 电子表格流 = 新的 MemoryStream()) { GetGradebookSpreadsheetTemplate(spreadsheetStream);
}
并且“CreateUserDataRow”创建一个新行,但相关部分是(其中“comment”是我的评论字符串,“c”是我想要创建评论的单元格):
现在,就我的眼睛和 KDiff3 而言,我的文件与我打开 Excel 并在 Excel 中手动将注释放入单元格时输出的文件几乎相同。
有没有人有一个使用 OpenXml 将评论附加到单元格的好例子?关于一段关系,有什么我应该知道的吗?它是否与使用我创建的 Excel 文件有关,然后我将其用作模板(可能未设置某些尺寸)?
感谢我能得到的任何帮助。
c# - 如何使用asp.net创建和下载excel文档
如何使用 asp.net 创建和下载 excel 文档?
目的是使用 xml、linq 或其他任何东西通过浏览器向客户发送 excel 文档。
编辑:用例
客户在浏览器中加载一个gridview(用ajax框架制作),gridview直接链接到一个sql数据库。我放了一个“导出到 excel”按钮,让客户将此 gridview 数据保存在他的计算机上,并且我想启动一个干净的 excel 下载。
这里提出的解决方案并不干净,比如发送一个html文档并将标题更改为excel文档等,我现在正在codeplex上搜索一个简单的解决方案,我会告诉你的。
guid - DOCX 中唯一 ID 的最佳位置(Open XML WordprocessingDocument)
如果 DOCX 文件被移动或重命名,我正在寻找一种方法来识别它们。原因很明显,我正在使用 Open XML SDK,构建一个超链接检查器。
完美运行,至少它可以在文档中添加或更新超链接。
但是,问题是,如果我重命名一个外部文件(source.docx + target.docx 为 targetB.docx),链接就会断开。我可以找到损坏的链接(只需检查链接文件是否在给定位置)。
但我想要更多。我希望能够通过搜索目录(docx)中的所有文档并扫描它们是否是“目标”来恢复丢失的链接。最简单的方法应该是存储在文档属性中某处的 GUID,如果文档被重命名或编辑(校验和不适用),它不会改变。
然后我创建一个单独的链接列表和相应的 ID,如果任何文档被重命名,我只需更新链接。我希望这个概念是清楚的。
所以有几个基本问题:
- 是否有“最佳实践”将此“自定义信息”存储在 Open XML 文档中
- 文字处理文档 (DOCX) 是否已经有一些由 Word 创建的唯一标识符
- 您将在哪里保存映射(超链接目标的 GUID)
我希望问题很清楚,如果没有,我会尝试澄清,如果有问题,请发表评论..
谢谢,克里斯
xml - 为什么 T-SQL OpenXML 会出现某些字符?
我在 SQL Server 中运行了以下 XML,但它中断了,为什么?
powerpoint - 使用代码/脚本/定义在 PowerPoint 中创建自定义形状或连接器
PowerPoint 2007 中的形状似乎是内置的 - 有没有办法创建“用户”/“自定义”形状?
我想创建一个自定义连接器,但知道您是否可以创建自定义形状,将来可能会很方便。
c# - 使用 Open XML SDK 进行邮件合并
我有一个包含 3 列(a、b、c)的 DataTable 和一个设置了相应 MailMerge 字段的 docx 文件。我想要做的是对带有数据的文档执行邮件合并。
假设您可以写入硬盘(如果您需要创建一个 csv 等来进行合并等),您没有word、excel 等,安装了 Open XML SDK ,但同样我们可以安装其他任何东西。
就答案而言,将输入数据转换为所需的数据并不是真正的问题,问题是如何在 Open XML SDK(或其他免费 API)中执行邮件合并。
作为旁注,输出应该是一个有 n 页的文件(其中 n 是数据中的行数),即不是 n 个文档(尽管我不介意文档的合并是否在最后完成)。
(我应该补充一点,我不依赖于 MailMerge 概念,例如能够进行替换就可以了 - 尽管显然这需要在最后将文件合并在一起......)
c# - 从模板创建 PowerPoint 2007 演示文稿
我需要使用Open XML Format SDK 2.0从模板创建 PowerPoint 2007 演示文稿。模板必须由客户提供,用于单独的布局样式(字体、背景颜色或图像……)。它需要包含两个预定义的幻灯片:
- 文字幻灯片
- 图片幻灯片
应用程序现在应该创建模板文件的副本,创建文本和图像幻灯片的多个副本,并用一些内容替换内容占位符。
我已经从 Microsoft 找到了一些代码片段来编辑幻灯片的标题、删除它们或替换幻灯片上的图像。但我不知道如何创建现有幻灯片的副本。也许有人可以帮我解决这个问题。
sharepoint - 如何准确判断一个 SPFile 实例是否为转换后的文件?
我一直在研究使用 MOSS 2007 将 docx 文件转换为 pdf 文件的文档转换功能。在 ItemAdded 事件中进行了 SPFile.Convert() 调用,并且 ItemFileConverted 事件也被很好地触发了。事件似乎工作正常,但转换过程并不总是设置转换后的 SPFile 实例的 IsConvertedFile 和 SourceLeafName 属性。这就是我试图用来确定是否应该调用 SPFile.Convert 的方法。
在深入研究 SPFile IsConvertedFile、GeneratingConverterId 和 SourceLeafName 属性的代码时,似乎这些是基于 SPFile.Properties “vti_dttransformerid”和“vti_dtparentleafname”的。问题是,每当我的 ISPConversionProcessor.PostProcess() 实现中有代码时,这两个属性的设置并不一致,我希望在其中对文件进行一些后处理。如果 PostProcess 方法中没有代码(只有 runDefaultPostProcessing = true; 语句),则属性设置更加一致。
我在 Wiki 页面中有一些关于正在发生的事情的其他详细信息,但是使用 .NET Reflector 来确定这些字段的更新位置是在 OWSTIMER.EXE 的一堵墙(我可以找到属性的所有读取,但是甚至 HtmlLauncher 和 LoadBalancer 服务也没有提到这些属性)。
有没有人完成了完整的文档转换实现并成功使用了 SPFile.IsConvertedFile 和 SPFile.SourceLeafName 属性?
c# - 如何在 OPENXML 电子表格单元格中插入换行符?
我目前正在使用这样的东西在单元格中插入内联字符串:
但是\n
插入换行符不起作用,我该怎么做?
响应
.net - 以编程方式从 VSTO Excel 工作簿中读取 _AssemblyLocation
我有一个 Visual Studio Excel 工作簿项目。当我发布工作簿并检查工作簿的来源时(我打开 WinZip 并检查 custom.xml),我看到标签 _AssemblyLocation,它对应于发布路径。
有没有办法从我的 .NET 代码中读取 _AssemblyLocation?
我希望能够读取发布路径并根据服务器名称确定我所处的环境(开发/质量保证/生产)。