在Excel中,我有一列需要轉換爲整數的單詞。例如,我有行業列:將單詞轉換爲VBA中的數字
- 資本貨物,
- 列表項,
- 消費者服務,
- 技術等
我想更換一個這些行業具有整數。
下面是我在VBA中嘗試的,但沒有奏效的東西。在這裏,我試圖循環遍歷列,如果當前單元格中的單詞與前一個單元格中的單詞不同,那麼我會爲其指定一個不同的整數。 (但它不起作用)
Sub WordtoNum()
Dim ws As Worksheet
Dim varList
Dim rng1 As Range
Dim lngCnt As Long
Dim startrow, wsheet, tt As Integer
' Enter the worksheet and starting row
'---------------------------------------
wsheet = 2
startrow = 2
'---------------------------------------
Set ws = Sheets(wsheet)
Set rng1 = ws.Range(ws.[a1], ws.Cells(Rows.Count, "A").End(xlUp))
varList = rng1.Value2
tt = 0
For lngCnt = startrow To UBound(varList)
If varList(lngCnt, 2) <> varList(lngCnt - 1, 2) Then _
tt = tt + 1
varList2(lngCnt, 2) = tt
Next
rng1.Value2 = varList
End Sub
此代碼主要基於我在最近的相關文章中收到的幫助。
請:1)向我們展示你想要完成的一個例子。 2)比「它不工作」更具體。 3)縮進你的代碼,讓我們的凡人更容易閱讀它。我這次爲你做了。也就是說,'varList2'在分配給它後既沒有聲明也沒有被使用。你的意思是'varList(lngCnt,2)= tt'?你的問題需要一些清理。 – 2012-03-26 07:00:27