我試圖在Excel中使用VBA編寫自動零件編號生成器。部件號碼格式如下:「XXXXX-XX」。前五位是序列號,後兩位表示修訂級別。Excel VBA - 生成零件編號
當一個新零件號被拉出時,修訂級別總是從「01」開始。例如:「12345-01」。預先存在的號碼從「A2」開始列在「A」列中。我希望宏查看整個「A」列並拆分「XXXXX-XX」格式,並只查看前5位數字。然後,它將確定該列中的最高值,並自動對該值+1,以創建我的下一個零件編號。
我,所以我在第一次嘗試如下完全新的VBA: 我聲明範圍1的範圍,所以它看起來在整個「A」柱,僅前5位:
Range1 = Microsoft.VisualBasic.Left("A2:A", 5)
如果我沒有記錯,那麼LEFT函數會以文本格式返回數字。那麼使用函數「Val」將文本轉換回數字格式是否正確? MaxValue被聲明爲一個整數以在列「A」中存儲最大值。
MaxValue = Application.WorksheetFunction.Max(Val(Range1))
我似乎得到了第一行代碼的運行時錯誤424,還是有更好的方法來做到這一點?任何幫助將不勝感激!
在此先感謝。乾杯,
'Microsoft.VisualBasic.Left'看起來像VB.NET語法 - 你可以用'Left',或者更好的,'左$' – ThunderFrame