2024年1月4日发(作者:)

在EXCEl2010中直接调用NIST REFPROP的设置方法

网上已经有很多在EXCEL中调用NIST REFPROP的设置方法,但是方法比较过时,本人也是试了好久才成功调用,先把主要步骤做下总结,现在电脑很多都是win8及win10的64位系统,所以针对64位的win10系统的安装方法

声明:

1、为了保证安装成功,希望严格按照安装步骤进行;若安装完成遇到错误,对相应步骤调整即可。

2、由于nist软件本身是32位软件,所以无论你怎么设置安装路径,都是C:ProgramFiles (x86)REFPROP下。D盘没有试过

一、建立环境变量

打开“开始/控制面板/系统/高级系统设置/高级/环境变量”,如下图所示。

新建一个环境变量,变量名=RPprefix,变量值= C: Program Files (x86)Refprop点击确定;

二、建立EXCEL加载项

1、打开REFPROP安装文件夹下的Excel文件。

2、按“Alt+F11”键,打开VB编辑器(或者按开发工具/VB编辑器)。

3、打开右边Module,找到如下内容

按“Ctrl+F”查找“”,并将其全部替换为"C:Program Files

(x86)”,保存,并退出Excel。

4、修改 中Declar为Declare PtrSafe 这一步比较关键有可能影响能否调用成功

三、保存REFPROP为MicrosoftOffice加载项

打开第2步保存的文件“另存为……”,选择文件类型“Excel加载宏(*.xlam)”,默认的文件地址会变为“...MicrosoftAddIns”,保存。

若未出现默认地址,在C盘搜索“*.xlam”,找到其所在文件夹,将保存的“”文件拷贝到该文件夹。

四、添加加载项AddIns

打开一个空白Excel文件,在“文件/选项/加载项”中添加和激活“REFPROPAddIns”,确保其处于激活状态。

五、测试结果

打开一个新的EXCEL空白文件,在任意一个单元格输入 =density("water","TP","SI",500,100) 如果显示为数值。恭喜你,成功了!

如果显示错误,

1.检查输入公式是否正确

例如:是否有中文符号等;

2.将安装目录中的文件夹fluid和mixtures,以及文件全部拷贝到所存放的文件夹(...MicrosoftAddIns),就OK了。

附:常用函数举例

MolarMass("Air")

Temperature("argon","PD","SI",2,15)

Pressure("r134a","TD","SI",400,50)

Enthalpy("ethylene","TS","SI",300,3)

Viscosity("oxygen","TP","SI",100,1)

ThermalConductivity("nitrogen","Tliq","SI",100)

Density("air","TP","E",70,14.7)

Enthalpy("R32;0.3;R125;0.7","PS","molar si",10,110)

Temperature("ethane;0.5;butane;0.5 mass","DH","E",30,283)

SpeedOfSound("ammonia;0.4;water;0.6","TP","E",300,10000)

Density("r218;.1;r123;.9","PH","cgs",7,180)

Quality("methane;40;ethane;60 mass","TD","mks",200,300) kg/kg

Quality("methane;40;ethane;60 mass","TP","mks",200,2814.5509)

mass ratio

Quality("methane;40;ethane;60 mass","TP","molar SI",200,2.8145509)

molar ratio

HeatOfVaporization("octane","tliq","c",100)

SurfaceTension("nitrogen","tl","SI",100)

Viscosity("butane;.25;hexane;.75","TH","SI",300,-21)

ThermalConductivity("carbon dioxide,.5,nitrogen,.5 mass","TH","SI",200,126)

DielectricConstant("ethane;.5;propane;.5","tvap","SI",300)

MoleFraction("",1)

mole2mass("",1,A30,1-A30)

mass2mole("",1,0.5,0.5)

LiquidDensity("methane;.7;ethane;.2;propane;.05;butane;.05","TD","SI",150,200)