Downloads
Interdiction
Molar Mass
Molar mass some times called molecular weight MW is the mass of a molecule. It is calculated as the sum of the atomic masses of each constituent element or group of elements multiplied by the number of it in the molecular formula.
Some formulas are quite simple CaCO3
but there are complex formulas such as Co3[Fe(CN)6]2.4NH3.6H2
and some organic compound is much complex.
Chemical Formula
is a way of presenting information about the chemical proportions of atoms that constitute a particular chemical compound or molecule, using chemical element symbols, numbers, and sometimes also other symbols, such as parentheses
https://en.wikipedia.org/wiki/Chemical_formula
Empirical formula
In chemistry, the empirical formula of a chemical compound is the simplest positive integer ratio of atoms present in a compound
https://en.wikipedia.org/wiki/Empirical_formula
Mole in Chemistry
The mole (symbol: mol) is the base unit of amount of substance (“number of substance”) in the International System of Units or System International (SI), defined as exactly 6.022 140 76 × 10^23 particles of entities (atoms, molecules, ions or electrons …)
https://en.wikipedia.org/wiki/Mole_(unit)
Using the Excel Sheet
Download and open Excel file and edit it as needed. The mass will be updated once the formula changes
to calculate a formula in a cell, just type something like this =MW("CaCO3")
.
Formula | Molecular Weight |
CuSO4 | 159.6 |
CaCO3 | 100.1 |
Co3[Fe(CN)6]2 . 4NH3 . 6H2O | 776.9 |
2Na2CO3 . 3H2O2 | 314.0 |
Na2CO3 . 1.5H2O2 | 157.0 |
NaBO2 . H2O2 . 3H2O | 153.9 |
Program OS Support
Windows 2000, Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10
System Requirements
Microsoft Excel
Categories
- CodeProject::Articles::Enterprise Systems::Office Development::Microsoft Excel
Keywords
VB,VBA,Office,Excel,molar,mass,molecular,weight,Calculator,Calculating,Calculate,Formula
Related Article
This article is a part of Office Programming Helper Indent VB Code
Downloads
Links
Excel Molar Mass Calculator on Code Project
Category
Articles::Enterprise Systems::Office Development::Microsoft Excel
A 1-line description
Excel, Pure VBA Macro: Molecular Weight/Molecular Mass Calculator
Tags
VB, VBScript, Office, MS-Excel, VBA, Calculator, Excel
A concise 1-paragraph abstract
In this article, we will explain how to write a pure Excel VBA macro to calculate Molecular Weight or Molecular Mass Calculator of a chemical formula. We go over how we store elements masses in a normal VBA keyed collection. The calculation is done via pure VB code without any additional reference or library with extremely simple code.
Calculating Molar Mass
In this article, we will explain how to write a pure Excel VBA macro to calculate Molecular Weight or Molecular Mass Calculator of a chemical formula.
The calculation is done via pure VB code without any additional reference or library with extremely simple code
Error handler and line numbering is added to simplify debugging the code.
How It Works
First of all, we store elements masses in a normal VBA keyed collection.
Private Sub SetAtomicMass()
On Error GoTo ErrorHandler
1 Call Masses.Add(1.00794!, "H")
2 Call Masses.Add(4.002602!, "He")
3 Call Masses.Add(6.941!, "Li")
4 Call Masses.Add(9.012182!, "Be")
5 Call Masses.Add(10.811!, "B")
Rem and so on to
118 Call Masses.Add(294, "Og")
Exit Sub
ErrorHandler:
Debug.Print ("Error in: MMW.SetAtomicMass." & Erl & vbNewLine & Err.Description)
Debug.Assert (False)
Call MsgBox("Error in: MMW.SetAtomicMass." & Erl & vbNewLine & Err.Description)
End Sub
To calculate mass of NaBO2 . H2O2 . 3H2O, we split it into part, NaBO2 , H2O2 , 3H2O.
We split each part like H2O into groups H2 and O.
Calculate the mass of each group and add them together to get the total mass.
Parts = Split(GetParts(Formula), ", ")
For Each Part In Parts
PartCount = GetPartCount(Part)
PartSymbol = GetPartSymbol(Part)
PartMass = 0
Groups = Split(GetGroups(PartSymbol), ", ")
For Each Group In Groups
GroupCount = GetGroupCount(Group)
GroupSymbol = GetGroupSymbol(Group)
SymbolMass = GetSymbolMass(GroupSymbol)
If SymbolMass = 0 Then
MolecularWeight = 0
Exit Function
End If
GroupMass = GroupCount * SymbolMass
PartMass = PartMass + GroupMass
Next
PartMass = PartCount * PartMass
Mass = Mass + PartMass
Next
MolecularWeight = Mass