首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在VBA中创建序列号

如何在VBA中创建序列号
EN

Stack Overflow用户
提问于 2021-04-08 08:21:25
回答 1查看 369关注 0票数 0

我期望红色圆圈中的数字,但我得到了红色圆圈的剩余部分。因此得到了6,在这里我期望211,其中我期望3。为此,您可以参考第一个图像。

代码语言:javascript
复制
Dim sh As Worksheet
Set sh = ThisWorkbook.Sheets(cmb_Type.Value)

Dim lr As Long
lr = Application.WorksheetFunction.CountA(sh.Range("A:A"))

sh.Range("A" & lr + 1).Value = lr
sh.Range("B" & lr + 1).Value = Me.txt_Date.Value
sh.Range("C" & lr + 1).Value = Me.cmb_Type.Value
sh.Range("D" & lr + 1).Value = Left(Me.cmb_Type.Value, 2) & lr
sh.Range("E" & lr + 1).Value = Me.cmb_Party.Value
sh.Range("F" & lr + 1).Value = Me.cmb_Category.Value
sh.Range("G" & lr + 1).Value = Me.cmb_Product.Value
sh.Range("H" & lr + 1).Value = Me.txt_Qty.Value
sh.Range("I" & lr + 1).Value = Me.txt_Rate.Value

sh.Range("A" & lr + 2).Value = lr
sh.Range("B" & lr + 2).Value = Me.txt_Date.Value
sh.Range("C" & lr + 2).Value = Me.cmb_Type.Value
sh.Range("D" & lr + 2).Value = Left(Me.cmb_Type.Value, 2) & lr
sh.Range("E" & lr + 2).Value = Me.cmb_Party.Value
sh.Range("F" & lr + 2).Value = Me.cmb_Category1.Value
sh.Range("G" & lr + 2).Value = Me.cmb_Product1.Value
sh.Range("H" & lr + 2).Value = Me.txt_Qty1.Value
sh.Range("I" & lr + 2).Value = Me.txt_Rate1.Value

sh.Range("A" & lr + 3).Value = lr
sh.Range("B" & lr + 3).Value = Me.txt_Date.Value
sh.Range("C" & lr + 3).Value = Me.cmb_Type.Value
sh.Range("D" & lr + 3).Value = Left(Me.cmb_Type.Value, 2) & lr
sh.Range("E" & lr + 3).Value = Me.cmb_Party.Value
sh.Range("F" & lr + 3).Value = Me.cmb_Category2.Value
sh.Range("G" & lr + 3).Value = Me.cmb_Product2.Value
sh.Range("H" & lr + 3).Value = Me.txt_Qty2.Value
sh.Range("I" & lr + 3).Value = Me.txt_Rate2.Value

输入用户形式 输出表

EN

回答 1

Stack Overflow用户

发布于 2021-04-08 08:41:17

只是猜测一下,因为你的问题虽不清楚,但请尝试以下几点:

将下面的代码添加到lr = Application.…行的下面。

代码语言:javascript
复制
Dim SerialNumber As Long
SerialNumber = Application.WorksheetFunction.Max(sh.Columns("A")) + 1

而不是在哪里有.Value = lr,你应该写

代码语言:javascript
复制
.Value = SerialNumber 

因为lr是最后一行,这就是为什么在期望2的地方获得一个6的原因,因为行的数量是6。您需要的是串行列+ 1的最大数量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66999998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档