我在我的Excel文件中有兩列。 A列是數值,B列是單位(kg/g)。我需要將所有值轉換爲g(如在c列中)。這裏有一個例子:Excel:如果列B等於值,編輯A列
A B C
0.75 kg 750.00
0.80 kg 800.00
700.00 g 700.00
500.00 g 500.00
我看着VBA劇本,但因爲我沒有使用過他們之前,我無法將其編輯成我的需要的。有任何想法嗎?
我在我的Excel文件中有兩列。 A列是數值,B列是單位(kg/g)。我需要將所有值轉換爲g(如在c列中)。這裏有一個例子:Excel:如果列B等於值,編輯A列
A B C
0.75 kg 750.00
0.80 kg 800.00
700.00 g 700.00
500.00 g 500.00
我看着VBA劇本,但因爲我沒有使用過他們之前,我無法將其編輯成我的需要的。有任何想法嗎?
如果你不想使用VBA(而你真的不需要,真的),從@tom_preston上面的公式是幾乎正確。
在「C2」中,您可以使用公式= IF(B2 =「kg」,A2 * 1000,A1)並將其複製下來。
我不知道你可以做到這一點沒有VBA。非常感謝你和@tompreston – VeeK
如果你希望它用VBA編寫,因爲上面提到的問題是可以放在工作表模塊中的代碼。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cellChanged As Range, c As Range
Const myVal As String = "kg"
Set cellChanged = Intersect(Target, Columns("B"))
If Not cellChanged Is Nothing Then
For Each c In cellChanged
If UCase(c.Value) = UCase(myVal) Then
c.Offset(, 1).Value = c.Offset(, -1).Value/1000
else
c.Offset(, 1).Value = vbnullstring
End if
Next
End if
End Sub
如何幫助我們度過美好的一天!
感謝您的回答,但正如其他人已經注意到一個簡單的公式比VBA腳本好得多。 – VeeK
爲什麼使用vba?把這個放在C1:= IF(B2 =「kg」,A2,A2/1000) – User632716
也是你的例子沒有意義,500g = 700kg? – User632716
@tompreston - 這是一個特殊的超市軟件:) – Vityata