各位使用者,你们好。如果对于这个表格有任何意见建议看法想法,欢迎留言,我会努力做得更好。
最新版本
2020年9月12日更新
SHA1: 1533AF43B8C71719827E681F018EC789DC104649
旧版本
这个是Excel版的电极电位计算器,最新版本是0.3.0,现发布出来与大家分享。文件见一楼。
一、结构
该工作簿由五个工作表组成,分别是“计算器”、“电极电位”、“元素序号”、“文本处理”和“关于”。
电极电位
此工作表储存了539条电极电位信息,并留有61条的空位供用户自行输入。电极电位数据来自《CRC Handbook of Chemistry and Physics 97th Edition 2016-2017》。
文本处理
该工作表用于文本处理,将直接输入的数字转换为上下标字符“₀₁₂₃₄₅₆₇₈₉⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻”(←欢迎复制使用)。
计算器
橙色单元格可以输入相应的数据,“单位”有下拉菜单可供选择。
“浓度”留空默认当“1”处理。默认单位是mol/L,不填亦可。
本表未提供活度逸度的计算,请用物质的量浓度和分压。压强单位为大气压(atm)。
原理:
$$\varphi = \varphi _{\theta } +\frac{RT}{nF} \times ln\frac{[Oxidation\:State]}{[Reduction\:State]}$$
界面示例
关于
二、备注
请务必看每一个注释,即单元格右上角的小箭头。
在“电极电位”数据表中录入数据时,所有为“1”的计量数都不能省略。
但是,在计算器中为了美观,“1”自动省略。
“₀₁₂₃₄₅₆₇₈₉⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻”没有设置上下标格式,字符本来就长这样。但是,在Excel中它们不会被当做数字。
鉴于这些特殊的字符在键盘上打不出来,为方便在“电极电位”数据表中录入数据,约定:上标请使用^,下标正常输入。如果不想让某些数字被自动处理,请在数字前加上 \ 反斜杠。
举个例子:输入“ZnSO4·\7H2O”会被“文本处理”工作表处理成“ZnSO₄·7H₂O”并于“计算器”中显示。
表格使用Excel 2019编辑,虽然在制作的时候已尽量留意,但仍可能有兼容性问题。最低支持Office 2007。
本文件核心部分的工作表有保护,但是没有密码,可以自行取消保护并研究设计原理。
请勿用于商业用途。
三、未来可能会添加的改动
H⁺和OH⁻的浓度的处理与其他离子分开。【已于0.2.0β实现】
自动识别固体、纯液体、气体和溶液中的离子,前两者浓度自动当1处理。【已于0.3.0实现】
合理处理有效位数。【已于0.2.0β实现】
增加难溶物离子积和弱电解质的处理。
未完待续
小技巧:
1.自动填充修正的列序号=IF(ISBLANK(B2),"",ROW()-ROW(A1))
来源:“电极电位”A列
含义:判断B2单元格是否为空。是,返回空文本;否,返回此单元格行序号与对应列表头单元格行序号的差。
解释:
IF和ISBLANK嵌套的作用是判断单元格是否有内容。如果有内容自动生成列序号,如果没有内容自动留空。
ROW()-ROW(A1)的作用是自动计算序号,在删除数行之后无需人工更正。A1的实质是序号列对应的表头单元格。
2.有效位数的计算
来源:“计算器”
新算法:先用IF(MOD(##,1)=0,0,LEN(##)-FIND(".",##))返回小数点后的数位,再用IF(##=0,0,INT(LOG10(ABS(##)))+1)返回数量级,最后将二者相加。(##为待检测的单元格。)
下载地址:一楼
此表为鄙人所作,如有错误纰漏,恳请各位批评指正。如果有什么使用上的问题,也欢迎各位提问。
[修改于 4年4个月前 - 2020/09/12 22:34:14]
各位使用者,你们好。如果对于这个表格有任何意见建议看法想法,欢迎留言,我会努力做得更好。
最新版本
2020年9月12日更新
SHA1: 1533AF43B8C71719827E681F018EC789DC104649
旧版本
更新日志
2020.09.12晚
0.3.0
1.弃用了基于“电极电位”表排序的编号,新序号基于反应方程式的变价元素
2.加入“查询”功能
3.调整了计算器界面
4.加入了物质的物态(s,l,g,aq,Hg)
5.加入浓度和单位的数据验证功能
6.增加使用说明
2020.03.04晚
0.2.0β
改进“电极电位”工作表中有效位数的算法
精简公式
添加“统一离子浓度”的功能
完成四舍五入和四舍六入五成双的功能
增加设置
0.1.2β
增加使用说明(右上角红色小三角)
补充电极电位工作表中英语内容的翻译
0.1.1β
增大字号,适当调整配色,保护视力且增加可读性
增加一些边框
2020.02.22
0.1.0β 雏形
谢谢楼主
虽然还没有用上
但是感觉很有用呢
下载了
计算电位就不用到处翻资料了
顺便补充一点,在0.1.0的版本中,有效位数的计算是通过检测数据开头是否为“0.”“-0.”“0.0”“-0.0”、检测文本长度并通过计算得来的。这种方法虽然够用,但是不能触及有效数字的本质特征。在新版本中,有效数字的计算是通过检测小数位数和数量级来实现的。公式中的if,abs等用于解决整数、零、负数等情况。这种差别可以在0.2.0版本的“关于”页中自己探索。
如果公式写的不对,欢迎提问质询。还有,如果网友们有实用、好看的更好的UI设计建议,也欢迎提出。
PS:E是科学记数法,相当于“×10^ ”。例如:NA可取6.02E+23。
计算器终于能抽一点时间更新了。
我想问大家一个问题:有没有一些特别想添加的功能?
200字以内,仅用于支线交流,主线讨论请采用回复功能。