Updating an Excel spreadsheet from a linked AutoCAD table using .NET

Excel 数据分析常用函数汇总 很多传统行业的数据分析师只要求掌握 Excel 即可,会 SPSS / SAS 是加分项。哪怕在数据分析岗位很多的互联网行业,Excel 依旧是不可替代的基础工具。Excel 是数据分析最常用、最基础的工具。大量传统行业(商贸、工厂、门店进销存)的数据分析师,熟练掌握 Excel + SQL 就可以完成绝大多数日常工作。对于初学者,不用一上来就啃 Python、R 这类编程语言,Excel 自带的函数、透视表、可视化插件足够支撑大部分统计、核对、报表需求; 阅读详情

 

In the last post we saw some code to update an AutoCAD table linked to an Excel spreadsheet. In this post we go the other way, updating an Excel spreadsheet from a linked AutoCAD table.

Here's the C# code:

using Autodesk.AutoCAD.ApplicationServices;

using Autodesk.AutoCAD.DatabaseServices;

using Autodesk.AutoCAD.EditorInput;

using Autodesk.AutoCAD.Runtime;

using Autodesk.AutoCAD.Windows;


namespace LinkToExcel

{

  public class Commands

  {

    [CommandMethod("T2S")]

    static public void UpdateSpreadsheetFromTable()

    {

      Document doc =

        Application.DocumentManager.MdiActiveDocument;

      Database db = doc.Database;

      Editor ed = doc.Editor;


      PromptEntityOptions opt =

        new PromptEntityOptions(

          "/nSelect table with spreadsheet to update: "

        );

      opt.SetRejectMessage(

        "/nEntity is not a table."

      );

      opt.AddAllowedClass(typeof(Table), false);

      PromptEntityResult per =

        ed.GetEntity(opt);

      if (per.Status != PromptStatus.OK)

        return;


      Transaction tr =

        db.TransactionManager.StartTransaction();

      using (tr)

      {

        try

        {

          DBObject obj =

            tr.GetObject(

              per.ObjectId,

              OpenMode.ForRead

            );

          Table tb = (Table)obj;


          // It should always be a table

          // but we'll check, just in case


          if (tb != null)

          {

            // The table must be open for write


            tb.UpgradeOpen();


            // Update the data link from the table


            tb.UpdateDataLink(

              UpdateDirection.DataToSource,

              UpdateOption.ForceFullSourceUpdate

            );


            // And the spreadsheet from the data link


            ObjectId dlId = tb.GetDataLink(0, 0);

            DataLink dl =

              (DataLink)tr.GetObject(

                dlId,

                OpenMode.ForWrite

              );

            dl.Update(

              UpdateDirection.DataToSource,

              UpdateOption.ForceFullSourceUpdate

            );

          }

          tr.Commit();

          ed.WriteMessage(

            "/nUpdated the spreadsheet from the table."

          );

        }

        catch (Exception ex)

        {

          ed.WriteMessage(

            "/nException: {0}",

            ex.Message

          );

        }

      }

    }

  }

}

Tables with linked spreadsheets are locked by default and display this glyph when you hover over them: Locked_table. Before you run the code you will need to unlock the table by right-clicking the cell(s) you wish to edit:

Unlocking_the_table

One point to note is that the code will work even if the spreadsheet is open in Excel, but the contents will not be updated automatically - you have to close and reopen the file to see the results. And you will probably see this dialog come up twice:

Overwrite_spreadsheet

For the best (most logical) results, the T2S command should really be run when the spreadsheet is not open in Excel. I expect it's possible to determine whether a spreadsheet is open in Excel from using standard file access functions in .NET (requesting exclusive access, to see whether it's possible to get it), but that's being left as an exercise for the reader (or for another day, at least :-).

For your convenience, here's a source file containing the code from the last three posts (command implementations for TFS, S2T and T2S).

 
百度坐标批量采集:Excel 地址列到 WGS84 经纬度 空间智能实验室 Vol.20:百度坐标批量采集:Excel 地址列到 WGS84 经纬度 公安、综治类台账里最常见的一张表,往往只有一列「单位地址」,没有坐标。这篇文章拆解我自建的一个小工具:上传 Excel、选一列地址 阅读详情

相关推荐

Coze平台智能体开发实战:打造测试工程师的AI助手

智能体是具备特定身份和能力的AI实体,由大语言模型(LLM)驱动,并通过插件、知识库和工作流扩展其能力。明确的角色定位:可以设定特定身份和专业领域扩展能力:通过插件连接外部工具和服务记忆能力:通过知识库存储和检索专属信息流程化处理:通过工作流执行复杂多步任务通过Coze平台创建测试工程师智能体,可以显著提升测试效率和质量。明确的角色定位:聚焦测试工程师的实际需求丰富的知识库:提供准确的领域知识支持合适的工具集成:通过插件连接现有工具链持续迭代优化:根据反馈不断改进智能体行为自动化测试生成。

hogwarts_beibei的博客 1005

Updating an AutoCAD table linked to an Excel spreadsheet using .NET

 Thanks to Viru Aithal, from DevTech India, for providing the code for this post (I converted the C# code below from some C++ he had sent to a developer).In the last post we showed how to create a

Travor is travelling... 926

从M.2到E1.S,从U.2到E3.S:数据中心SSD接口的世代更迭与选择逻辑

本文深入探讨了数据中心SSD接口从M.2、U.2到E1.S、E3.S的演进历程与选型逻辑。通过对比分析不同接口的物理规格、性能表现和散热设计,揭示了EDSFF接口在数据中心环境中的优势,包括更高的部署密度、更好的散热效能和更强的扩展能力。文章还提供了针对不同应用场景的SSD选型建议,帮助IT决策者优化存储架构。

weixin_33816300的博客 416

Excel的三种密码:防看、防存、防乱改,各管各的

你的Excel该用哪种密码?看完这篇就懂了

passneo的博客 177

KEPServer EX6的Modbus、MQTT和REST Server一站式配置整理说明

KEPServer EX6的Modbus、MQTT和REST Server一站式配置整理说明

syqenter的专栏 8961

HALCON 20.11实战:5步搞定工业图像异常检测(附完整代码)

本文提供了一份基于HALCON 20.11的工业图像异常检测实战指南。通过五个核心步骤——环境准备、数据预处理、模型训练、推理解析与工程化部署,详细演示了如何利用深度学习技术,仅使用正常样本快速构建并优化金属表面划痕等缺陷的检测模型,并附有完整可运行的HDevelop代码,助力工程师实现高效、智能的工业视觉质检。

weixin_29243279的博客 140

全星FMEA系统深度评测:从Excel地狱到平台化失效分析的工程实践

全星FMEA系统的核心价值不在"表格电子化",而在七步法结构化 + 三大文件联动 + 变更可追溯 + 平台化集成。它不完美——自动化程度有限、对基础数据质量高度依赖、AI能力偏保守。但对于需要"说得清、改得准、审得过"的制造企业,这套取舍是合理的。一句话:它卖的不是FMEA软件,是研发风险的可控性。欢迎评论区交流FMEA系统选型与实施经验,后续可拆解APQP/PPAP联动细节。#FMEA #质量管理 #APQP #IATF16949 #制造业数字化 #技术选型。

2501_90343043的博客 334

Tushare Day2——了解stock_basic数据并根据行业和地区进行统计

了解stock_basic数据 1  stock_basic基础信息2  导入包和stock_basic数据、查看基本信息3  根据行业列进行统计3.1  1.先把不同行业列举出来,看一下一共有多少种行业3.2  2.统计每个行业分别有多少家公司3.3  3.把行业从array的二维数组形式变成list形式3.4  4.把行业从list形式转换成文本形式3.5&nbsp

绒绒的Routine 2796

向 excel、word、pdf 三种文档中占位符插入数据

【代码】向 excel、word、pdf 三种文档中占位符插入数据。

weixin_45934659的博客 52

把 SAP 输出稳稳落到 PDF:从 SPAD 前端打印到 ABAP 程序级转换的一套方法

摘要:本文介绍了三种在SAP系统中将报表输出转为PDF文件的方法。路线A通过SPAD配置前端输出设备,结合Windows打印机设置实现用户交互式PDF保存;路线B在SP01事务码中将已有Spool请求另存为PDF,适用于补救导出;路线C通过ABAP程序自动转换Spool为PDF,适合批量处理。文章详细说明了配置步骤,并针对常见问题(如乱码、文件格式错误等)提供了排查思路。三种方案分别适用于不同场景,用户可根据实际需求选择最合适的PDF导出方式。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 221

12、多端神经形态晶体管:原理、应用与算法探索

本文综述了多端神经形态晶体管的原理、应用与算法探索。从神经元MOS晶体管的发展到基于电解质栅极晶体管(EGT)的新型器件设计,系统阐述了其在低电压、多功能逻辑运算和突触行为模拟方面的优势。重点介绍了其在化学生物传感器(如多巴胺和pH检测)中的高灵敏度应用,以及在树突整合、时空总和、动态逻辑和神经元算术等树突算法中的实现。文章还总结了该类器件在神经形态计算、智能传感等领域的广阔前景,并分析了当前面临的材料工艺、理论建模与系统集成挑战,展望了未来发展方向。

delta的博客 143

跨境电商订单导出CSV用Excel打开手机号变科学计数法的列格式排查

手机号在 Excel 中变科学计数法,多因 CSV 被按数值解析。先看编辑栏判断是显示格式还是精度丢失,再用导入向导指定文本列,并核对源文件与保存后的结果,定位异常发生在哪一层。

2501_90960485的博客 131

ZYNQ 7020 之 FPGA知识点重塑笔记一——串口通信

通信方式一般分为串行通信和并行通信。并行通信是指多比特数据同时通过并行线进行传送。这种传输方式通信线多、成本高,故不宜进行远距离通信,通常传输距离小于 30 米。串行通信是指数据在一条数据线上,一比特接一比特地按顺序传送的方式。这种运输方式通常节省传输线,大大降低使用成本,但数据传送速度慢。综上可知,串行通信主要应用于长距离、低速率的通信场合。本次实验我们主要讲解下串行通信。串行通信一般有2种通信方式:同步串行通信和异步串行通信。同步串行通信。

m0_51430584的博客 3094

Excel 导入后标签全错行:Brady Workstation 先把表头和标签顺序对齐

Excel 数据导入 Brady Workstation 后错行,常与表头、字段映射、导入方式、模板模式和标签顺序有关。文章给出官方操作边界、首尾记录验收和 CSV 检查脚本。

preludecorp的博客 316

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

【python项目】:1操作EXCEl自动化开发

编码选 UTF-8,保存后双击直接用 Excel/WPS 打开。然后再次另存为xlsx格式。使用方法:全选下面所有文字,复制,记事本粘贴,保存,文件名填。难点:有的电影类型包含多种:喜剧 动画 音乐。

总裁余(余登武)博客 50

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

跨境电商订单导出CSV用Excel打开后SKU前导零丢失的原因与两种修复方式

解释Excel打开订单CSV后SKU前导零丢失的机制,先教用文本编辑器判断零丢在文件还是打开环节,再给出导入向导指定文本列与先建文本模板两种修复方式及适用边界。

2501_93712812的博客 194

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

使用C#代码提取、修改或删除 Excel 中的超链接

通过 C# 和 VB.NET,可以方便地管理 Excel 文件中的超链接,包括提取、修改和删除等操作。提取超链接: 获取工作表中的超链接集合,读取每个超链接的地址和类型,并将相关信息保存到文本文件中。修改超链接: 更新超链接的显示文本和目标地址,确保链接信息准确。删除超链接: 移除指定的超链接,同时可以选择保留单元格中的原有显示文本,或清除单元格的全部内容。这些操作可以帮助开发人员更高效地管理 Excel 文档中的链接信息,减少重复的手动操作,也便于在数据迁移、文档维护和自动化报表处理等场景中使用。

2501_93070778的博客 231

Linux & Vim 中 % 、& 用法

……

u013669912的博客 360

五金厂排产困局破局:从Excel改单3小时到JVS-APS分钟级重排

本文以五金行业多品种、小批量、高频插单为背景,剖析Excel排产失效的技术根源,详解JVS-APS如何通过工艺模板规则化建模、主辅资源实时联动、四维约束闭环计算与执行反馈驱动,实现分钟级动态重排。附可落地的配置逻辑与闭环执行路径。

406

用 Excel 完成数据分析,一套可上手实操流程

很多初学数据分析的人会陷入一个误区:把 Excel 数据分析等同于背诵、嵌套各种函数,觉得不会几十条函数,就做不了数据分析。但在商贸、门店、工厂这类传统行业的日常工作里,大量的数据工作其实不靠复杂公式,依靠 Excel 的自带功能:规范表格结构、Power Query 批量清洗、数据透视表汇总、切片器联动、条件格式预警、图表可视化,就能独立完成从杂乱原始台账,到一份可以交给领导复盘的分析报表。对于想要应聘进销存、运营数据岗的人来说,这一套能力甚至比会写复杂嵌套函数更加常用。

qq_22201881的博客 246

读写 Excel 的 10 个坑:公式、合并单元格、多 sheet

Excel 是交付标准,也是坑最多的地方:openpyxl 写进去的公式读回来是空、合并单元格只有左上角有值、日期变成数字、多 sheet 读成字典、xls 打不开、写文件被占用……这篇用 10 个真实场景把坑跑一遍,每个都给原因和可复制的解法。

2201_76128658的博客 273

自动化办公新选择:一键产出 Word Excel PPT,关机持续执行任务

一键出文档表格幻灯片,比的是"从空白页到可编辑成品"的闭环,核心看多智能体协同、原生格式、数据溯源;关机后台继续跑,比的是"人离开后算力还在不在"的可靠性,核心看端云协同、跨设备接力、定时自动化。天天写研报、做路演、出严谨文档 → 优先看专业办公交付型(可溯源+Office三件套并行+续跑能力)团队已在某个IM生态里 → 用生态内AI,减少切换成本重复操作多、系统杂 → RPA补执行层想自己造前台Bot → 智能体搭建平台。

2601_96127361的博客 525

如何在 Excel 中插入和嵌入文件?使用 Python 添加图片及 OLE 对象

在 Excel 中添加图片和其他文件,可以直接使用软件自带的插入功能,也可以借助 Python 实现自动化处理。如果只是偶尔添加图片或附件,通过 Excel 的插入菜单就能快速完成;如果需要批量处理图片,可以使用 Spire.XLS for Python 的方法,将图片添加到指定的工作表位置;而对于 Word、PDF、PowerPoint 等外部文件,则可以使用方法将其作为 OLE 对象嵌入工作簿,或者通过链接方式引用外部文件。

E_ICEBLUE的博客 191

电脑误删的Excel文档怎么恢复?六种方法,从零成本到深度扫描

Excel数据丢失不可怕,关键在及时应对。先停用原盘写入,避免覆盖;优先尝试撤销(Ctrl+Z)、回收站、自动恢复及“以前的版本”;若文件损坏,可改后缀为.zip手动提取数据;重要文件务必启用云端版本历史与自动恢复(设为5分钟间隔)。最后再用专业工具深度扫描。核心:预防胜于救急——本地+云+备份三重保障,才能真正安心。

2604_96996540的博客 365

全自动办公:一键生成 Word/Excel/PPT,任务关机不断

一键出文档表格幻灯片,比的是"从空白页到可编辑成品"的闭环,核心看多智能体协同、原生格式、数据溯源;关机后台继续跑,比的是"人离开后算力还在不在"的可靠性,核心看端云协同、跨设备接力、定时自动化。天天写研报、做路演、出严谨文档 → 优先看专业办公交付型(可溯源+Office三件套并行+续跑能力)团队已在某个IM生态里 → 用生态内AI,减少切换成本重复操作多、系统杂 → RPA补执行层想自己造前台Bot → 智能体搭建平台。

2601_96127361的博客 506

使用 Python 在 Excel 文档中添加水印

设置,适合屏幕显示,不会随工作表打印。使用等属性配合&G占位符,适合打印和 PDF 输出。使用创建文本框,再通过.Text设置文字,适合添加“机密”“草稿”等文字标记。实际使用时,可以根据水印内容和文件输出方式选择合适的方法。如果需要为多张工作表或多个工作簿添加统一标记,还可以结合循环实现批量处理。

2503_93068783的博客 292
上一篇: Updating an AutoCAD table linked to an Excel spreadsheet using .NET
下一篇: Creating an Installer" webcast recording available for download
sdphg
博客等级 码龄21年 6粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值