Re: [算表] VBA 序號自動產生(VBA)
試了一下,應該是你使用 yymmdd 所以會有第一個是0的情況,
而 excel 又把他認為是數字,所以第一個0會不見了 ...
改以下得方法試看看!
Sub 按鈕1_Click()
Dim da As Variant
Worksheets("sheet2").Cells(4, 3).Value = Date
da = Format(Worksheets("sheet2").Cells(4, 3).Value, "yymmdd")
i = 0
Do
i = i + 1
Loop Until da & i > Worksheets("sheet1").Cells(1, 3).Value
Worksheets("sheet2").Cells(4, 2).NumberFormatLocal = "@"
Worksheets("sheet2").Cells(4, 2).Value = da & i
Worksheets("sheet1").Cells(1, 3).NumberFormatLocal = "@"
Worksheets("sheet1").Cells(1, 3).Value = da & i
End Sub
※ 引述《itat2007 (Black Day)》之銘言:
: 軟體: EXCEL
: 版本: 2003
: =============================================================
: 請問一下各位大大,小弟要做一個序號自動產生,以日期為前六碼號碼
: 最後一個為流水號
: 在sheet2欄中做一個按鈕,要比對sheet1欄中某個數值,
: 這個數值就是前次輸入的序號,但是如果填入欄位做比對
: 都會不成立,如果手動輸入數值就可以
: 不知道問題出在哪,以下是程式碼,希望各位大大幫我看看
: 謝謝
: ==================================================
: Private Sub CommandButton1_Click()
: Dim da As Variant
: Worksheets("sheet2").Cells(4, 3).Value = Date
: da = Format(Worksheets("sheet2").Cells(4, 3).Value, "yymmdd")
: i = 0
: Do
: i = i + 1
: Loop Until da & i > Worksheets("sheet1").Cells(1, 3).Value
: Worksheets("sheet2").Cells(4, 2).Value = da & i
: Worksheets("sheet1").Cells(1, 3).Value = da & i
: End Sub
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.229.79.205
推
06/05 22:32, , 1F
06/05 22:32, 1F
※ 編輯: windknife18 來自: 140.131.84.79 (06/06 08:42)
→
06/06 08:43, , 2F
06/06 08:43, 2F
→
06/06 08:43, , 3F
06/06 08:43, 3F
推
06/09 08:16, , 4F
06/09 08:16, 4F
→
06/09 12:12, , 5F
06/09 12:12, 5F
Office 近期熱門文章
PTT數位生活區 即時熱門文章