tft每日頭條

 > 圖文

 > excel表vba每頁自動生成序号

excel表vba每頁自動生成序号

圖文 更新时间:2024-12-26 03:04:35

excel表vba每頁自動生成序号?我們需要一個采購單,能實現部分自動功能,我來為大家科普一下關于excel表vba每頁自動生成序号?以下内容希望對你有幫助!

excel表vba每頁自動生成序号(用EXCELVBA做一個采購單)1

excel表vba每頁自動生成序号

我們需要一個采購單,能實現部分自動功能

1. 單号自動填寫,以“采購”首字母“CG”開頭 當天日期 三位自動編号,保證單号唯一不能有任何重複

2. 自動填寫填單日期

3. 建立供應商供應信息并能快捷插入

4.能保存過往單據内容

5. 能複盤過往單據

一:單據格式

單據格式

1. 先實現紅色色部分功能

打開文檔,就要自動填寫單号和日期;要打開文檔即執行VBA,那麼代碼就得寫在THISWORKBOOK頁面

準備:

a> 建立一個叫“采購單”的工作表

b> 右擊工作表下方名稱部位-》查看代碼

c> 雙擊“thisworkbook”彈出的代碼頁輸入下列代碼

文檔頁面

Private Sub workbook_open()

'下面自動填寫日期,格式為年/月/日

dates = Application.Text(Now(), "yyyy/mm/dd")

Sheets("采購單").Range("e6").Value = "日期:" & dates

'格式化日期為字符串,取消反斜杠年/月/日變為年月日

d = Replace(dates, "/", "")

'獲取單号裡的日期,A2表格内容的第9個字符往後8位長度

d0 = Mid(Sheets("采購單").Range("a2").Value, 9, 8)

'獲取當前單号尾綴,A2内容字符從右數起三位數

st = Right(Sheets("采購單").Range("a2").Value, 3)

'判斷是否為數字,不是數字就出錯了

If IsNumeric(Right(st, 1)) Then

'日期相同尾綴自動 1,表示今天你第二次打開準備錄第二張單,每打開一次都自動加1

If d <> d0 Then

nst = 1

Else

'輸出數字類型

nst = CInt(st)

nst = nst 1

End If

'格式化,讓數字保持為三位數

nst = Format(nst, "000")

'如果原來已經有單号,則自動填寫更改後的單号

Sheets("采購單").Range("a2").Value = "采購方單号:" & "CG" & d & nst

Else

'如果原來A2格是空白的,則自動填寫為001的單号

Sheets("采購單").Range("a2").Value = "采購方單号:" & "CG" & d & "001"

End If

End Sub

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved