白愛民
(云南省環境監測中心站,云南昆明650034)
在工業、農業、衛生、環境保護等許多方面,pH都是一個被廣泛應用的重要化學指標,它表示出溶液中H+濃度的大小及酸堿性的強弱。求解pH的平均值是實驗室數據分析的常規任務之一,通常在EXCEL中來完成。但很多實驗室工作人員使用EXCEL仍停留在初級水平,求解pH的平均值時僅會用最簡單的分步求解法,求解工作量大,易出錯。找出一種簡單、直觀、方便、易用的求解pH的平均值的方法是很有必要的。
氫離子濃度指數 (hydrogen ion concentration)是指溶液中氫離子的總數和總物質的量的比。它的數值俗稱“pH值”,表示溶液酸性或堿性程度的數值,即所含氫離子濃度的常用對數的負值[1]。
如果某溶液所含氫離子的濃度為每升0.00001mol/L,它的氫離子濃度指數就是5,計算方法為-lg[濃度值]。
氫離子濃度指數一般在0~14,當它為7時溶液呈中性,<7時呈酸性,值越小,酸性越強;>7時呈堿性,值越大,堿性越強。
pH 1909年由丹麥生物化學家Soren Peter Lauritz Sorensen提出,是氫離子濃度的意思。
由pH的定義可知,pH是衡量溶液酸堿性的尺度。化學變化以及生產過程都與pH值有關,在工業、農業、醫學、環保和科研領域都需要控制溶液的酸堿,這些地方都需要知道溶液的pH。
醫學上:人體血液的 pH值通常在7.35~7.45,如果發生波動,就是病理現象。唾液的pH值也被用于判斷病情。如夏季蚊蟲叮咬會分泌出甲酸 (蟻酸),人感到癢,是因為此時pH低于7顯酸性,可采用肥皂水、牙膏來增加pH值使人減輕痛癢感。
化學和化工上:很多化學反應需要在特定的pH下進行,否則得不到所期望的產物。
農業上:很多植物有喜酸性土壤或堿性土壤的習性,如茶的種植。控制土壤的pH可以使種植的植物生長得更好。
環保上:測量降水的pH可知是否有酸雨、空氣是否污染及其污染程度。
在進行數據處理時,經常需要求出多個樣本pH的平均值,鑒于pH值的特殊性,其平均值的計算不能采用簡單的算術平均值方法。下面以酸雨為例來說明pH平均值的計算公式[2]。
(1)先計算各個酸雨監測值的H+濃度
∵pH是H+活度 (濃度)的負對數
∴當pH=a時,H+活度 (濃度)Ci=10–ai
(2)再計算出H+濃度的加權平均值

式中:Vi是第i個樣本的采樣體積
n為樣本數
(3)再將H+濃度的加權平均值計算為pH值

在河流 (湖庫)水質監測中,也需要計算pH平均值。其計算方法更為簡單,因不考慮溶液的體積,在上述方法中的 (2)中,只須計算出H+濃度的算術平均值,即:

MicroSoft Office EXCEL是廣泛使用的數據處理工具之一。Excel內置函數的快捷與方便,強大的內置函數庫大大增強了Excel數據計算與分析的能力。通過組合多個內置函數,可滿足更為復雜的任務需求。但是,內置函數也不一定總能滿足特殊的計算或分析任務,而且,內置函數組合常常很難理解,這時,就可以通過自定義函數來解決問題。
下面用實例來說明計算pH平均值的幾種方法。
本例中,欲求2011年某湖庫監測點pH平均值,共有6個pH監測值 (見單元格C3至C8)。
(1)先計算各個監測值的H+濃度 (見單元格D3至D8,E3至E8是對應D3至D8的公式);
(2)計算H+濃度的平均值 (見單元格 D9,E9是對應D9的公式);
(3)再將H+濃度平均值計算為pH值 (見單元格D10,E10是對應D10的公式)。
監測數據和各步驟的計算結果見表1。

?
該方法采用組合EXCEL內置函數來實現pH平均值的計算。C20為C14至C19中各pH監測值的平均值,對應的公式在其后。
EXCEL的自定義函數功能是MicroSoft Office先進性的具體體現之一。通過VBA完成自定義函數的編寫后,再在EXCEL中使用加載宏,就可像EXCEL的內置函數一樣使用自定義函數了。VBA全稱是Visual Basic for Application,它是微軟最好的通用應用程序腳本編程語言。本例求湖庫pH平均值自定義函數的函數名為AverpH(),括號內的參數為擬求pH平均值所選擇的數據單元格范圍,具體函數代碼如下:

?
Function AverpH(pH As Range)As Double
'自定義函數,求選定范圍pH值的平均值 (適用于湖庫測點)
MyPH=0
MyCount=0
For Each C In pH.Cells
If C<>""Then
If IsNumeric(C)Then
MyPH=10^(-C)+MyPH
MyCount=MyCount+1
End If'isnumeric
End If'""
Next
MyPH=MyPH/MyCount
AverpH=-Log(MyPH)/Log(10)
End Function
使用自定義函數求pH平均值的例子見表3。C34單元格顯示的是C33求pH平均值的公式。
求降水pH平均值與求湖庫pH平均值不同,函數中增加了降水量的計算,自定義函數名為AverpHA(),其中C24至C26為3次降水pH值,D24至D26為對應的降水量。C28單元格顯示的是C27求pH平均值的公式。見表4。
VBA的另一個主要用途是使電子表格的任務自動化。對于需要使用多種不同方法 (或函數)對多個表中的大量數據進行處理時,通過VBA編寫程序代碼更能體現EXCEL的優越性,當然,VBA編程也可用來只求pH平均值。

?

?
(1)分步計算法是最簡單的方法,也是一般工作人員常常采用的方法。但工作量大,要分三個步驟,多個單元格計算,才能獲得結果。
(2)組合內置函數法雖然將分步計算法的三個步驟綜合在一起,在C20中輸入公式后就能獲得計算結果,但計算公式編寫不易,容易出錯,公式冗長繁瑣,不便于理解和管理。受使用條件的限制,組合內置函數法不易推廣使用。
(3)自定義函數的方法使用最為方便,可像內置函數一樣使用,公式簡單易記,數據范圍可大可小,初學EXCEL的人員使用也不困難。當然,在第一次使用之前,必須輸入自定義函數的代碼,并正確加載。
(4)VBA編程方法功能最強大。調用編寫好的宏程序模塊,可自動完成整個電子表格中多個不同內容的計算任務。但是,采用此方法需要具備很好的Visual Basic編程語言的基礎,并熟悉EXCEL系統。如果僅僅做單任務計算,如求pH平均值,使用自定義函數更具有優勢。
在實驗室數據分析中,經常需要求解pH的平均值,求解工作通常在EXCEL中來完成。EXCEL功能非常強大[3],但很多人僅僅停留初級水平,遠沒有體現出EXCEL的優越性。本文詳細描述了4種在Excel中求pH平均值的方法,并對這幾種方法進行了比較和分析。自定義函數法最簡單、最直觀,使用方便,易于推廣。掌握自定義函數法的編寫與加載,可實現復雜的單任務數據處理與分析,大大提高工作效率。