Mathcad中文网站 > 使用教程 > 将Excel与PTC Mathcad集成
将Excel与PTC Mathcad集成
发布时间:2024/10/23 18:15:18

多年来,我曾多次与工程师讨论哪个程序更适合进行工程计算:PTC Mathcad 还是 Excel。我的回答通常是:“它们都是很棒的程序,我经常使用它们。”它们都有独特的功能,使每个程序都更适合特定需求。正如您所料,我更倾向于 Mathcad。

 

奇妙的是,使用Mathcad,您可以同时利用这两个方面。具有完整功能的 Excel电子表格可以嵌入到您的Mathcad工作表中。在这种情况下,您可以鱼与熊掌兼得。当 Excel 文件嵌入Mathcad中时,Mathcad 会将值提供给 Excel 中的特定单元格。Excel将进行处理,然后Mathcad可以从特定的Excel单元格中提取结果。

 

关于 Mathcad 和 Excel 的完整讨论将比我在本博客中写的要长得多。事实上,我的每本书都用整整一章来讨论这个主题。本博客将重点介绍 Mathcad/Excel 集成的强大功能,但不会提供有关如何实现它的具体信息。有许多资源可帮助您学习如何执行我将在本博客中展示的操作。我将讨论 Excel 组件以及 READEXCEL 和 WRITEEXCEL 函数。

 

注意:要使用 Excel 组件,必须在计算机上安装 Excel。使用 READEXCEL 和 WRITEEXCEL 函数时无需安装 Excel。

 

Excel 组件

 

Excel 组件是嵌入在 Mathcad 工作表中的 Excel 工作表。双击该组件时,Excel 将打开,您可以像在 Excel 中一样创建电子表格。关闭工作表时,它现在嵌入在 Mathcad 中。

要引入现有的 Excel 电子表格,您必须在 Mathcad 中打开一个空白的 Excel 组件,然后从现有的 Excel 电子表格中复制所有单元格并将其粘贴到 Excel 组件中。

 

下面的例子是对简支矩形梁应力的一个相当简单的计算。在 Mathcad 中很容易计算,在 Excel 中则比较困难,但它说明了一些概念,例如将数据输入 Excel、了解单位如何影响输入值的重要性以及如何从 Excel 中获取结果。

使用 Mathcad 和 Excel 计算简支矩形梁的应力。

在以下示例中,Mathcad 使用公制单位,但 Excel 期望使用表示英尺和英寸的值。

 

请注意,尽管在 Mathcad 中输入的是公制单位,但 Excel 输入内容还是像上例一样除以英尺和英寸。

 

输出仍乘以 psi,因为这是 Excel 生成的值。然后可以以公制单位显示该值。

 

了解 Excel 所需的值及其期望的单位至关重要。在创建 Excel 输入时,通过将 Mathcad 值除以这些单位来实现这一点。

定义具有公制单位的变量以用作 Mathcad Prime 中 Excel 组件的输入

使用 Mathcad 和 Excel 输出计算结果。
以上两个示例很简单。您可以创建复杂的 Excel 组件,但概念是相同的。

 

  1. 确定您希望 Mathcad 填充的单元格地址。
  2.  
  3. 了解 Excel 需要什么单位,然后将 Mathcad 值除以所需单位。
  4.  
  5. 确定要带回 Mathcad 的 Excel 输出的单元格地址以及数据应具有的单位。
  6.  
  7. 将相同的单位附加到 Excel 输出。
  8.  

如果您有现有的 Excel 电子表格,请复制 Excel 单元格并将其粘贴到新的 Excel 组件中。最好保护 Excel 电子表格中除需要输入的单元格之外的所有单元格,这样您就不会意外覆盖值或公式。

 

READEXCEL 函数

 

如果您有要导入 Mathcad 的 Excel 数据表,READEXCEL 函数非常有用。例如,AISC 有一个 Excel 文件,其中包含所有 AISC 梁截面的钢材属性。它有 70 多列,270 多行。

 

以下示例显示了导入 Mathcad 的该 Excel 文件中的一小部分数据。它以数组形式导入,Shapes 数据库中的所有数据现在都位于 Mathcad 中。

将 Excel 文件中的一部分数据导入 Mathcad。

您还可以从 Shapes 矩阵中提取列向量。这将使数据操作和搜索更加容易。

从 Excel 导入 Mathcad 的 Shapes 矩阵数据的列向量。

WRITEEXCEL 函数

 

WRITEEXCEL 函数可用于将一个矩阵或一系列矩阵导出到一个或多个 Excel 文件。


另一个用途是,如果您在 Mathcad 中执行一系列运行,并希望在 Excel 电子表格中捕获每次不同运行的输入和结果。

 

下面的示例从上面的示例中获取向量 Area 和 Label,并创建一个名为 AISCData 的新 Excel 文件。它将 Label 写入 A 列,将 Area 写入 B 列。

 

Mathcad Prime WRITEEXCEL 函数语法

请注意,函数定义中的 [1] 指的是 Excel 中的第一个工作表。如果您要写入第一个工作表,则可以省略此操作。如果您想写入第二个工作表,请使用 [2],等等。

 

这是创建的 Excel 文件的屏幕截图。

使用 Mathcad Prime 的 WRITEEXCEL 函数创建的 Excel 文件的屏幕截图。

何时使用每个 Excel 集成选项

 

让我们比较一下 Excel 组件和 READEXCEL 函数,并讨论一下何时分别适用。

 

如果您想使用 Excel 执行计算,然后让 Mathcad 提取结果,则需要 Excel 组件。它允许您利用 Excel 函数和特性。除非您使用 Excel 组件的输出区域提取数据,否则 Mathcad 无法使用 Excel 中的数据和数字。Excel 组件不维护与任何外部 Excel 文件的链接;它将 Excel 数据嵌入并存储在 Mathcad 中。

 

另一方面,使用 READEXCEL 函数时,Excel 文件中的所有数据都会被带入 Mathcad 并可供使用。如果您需要访问所有数据,这是将数据带入 Mathcad 的最简单方法。如果您的 Excel 文件仅用于存储数据,请使用此功能。如果您的 Excel 文件正在执行计算,则此功能不合适。如果 Excel 文件中有一个带函数的单元格,则计算结果将被带入 Mathcad,而不是公式。READEXCEL 函数链接到原始 Excel 文件,并且必须保留对该 Excel 文件的访问权限。

 

如果您的 Excel 文件包含计算和数据的组合,那么最好使用 Excel 组件。Excel 电子表格的数据部分可以从 Excel 组件的输出区域带入 Mathcad。您需要提供左上角数据单元格和右下角数据单元格的单元格地址。例如,使用贷款利率、贷款条款等来创建贷款摊销计划。使用 Excel 组件,您可以向 Excel 提供贷款数据,然后 Excel 将创建计划。然后可以将计划中的所有数据从输出区域带入 Mathcad,如上所述。

 

在 Mathcad 中使用 Excel 是扩展 Mathcad 功能的绝佳方式。如果您有现有的 Excel 工程计算文件,则可以在 Mathcad 中使用这些文件以及 Mathcad 的所有其他优点。

在有意义的地方使用 Excel,但在 Mathcad 工作表中执行。

 

 

 

 

 

读者也访问过这里:
135 2431 0251