Excel编程自动完成部分输入(数字)

标签 excel vba

我们在 Excel 中管理库存。我知道这有点过时,但我们正在发展商业公司,我们所有的钱都被困在业务上,没有钱投资 IT。

所以我想知道我可以用Excel自动完成产品编号的方式进行编程吗?

这是一个产品类别的示例
Example

我们所有的设计代码都是6位数字,我真正想要的是,当只添加部分数字并按回车键时,它会通过上面的数字自动完成剩余的数字。

例如,在这种情况下,我期望的是,如果我输入 5 按 Enter 键,它会根据上述数字自动生成 790705

最佳答案

将以下 VBA 代码添加到工作表的代码部分:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim oldText  As String, aboveText As String, newText As String
    If Target.Column = 2 And Target.Row >= 3 And Target.Text <> "" Then
        oldText = Target.Text
        aboveText = Target.Cells(0, 1).Text
        If Len(aboveText) = 6 And Len(oldText) < 6 Then
            newText = Left(aboveText, 6 - Len(oldText)) & oldText
            Application.EnableEvents = False
                Target.Value = newText
            Application.EnableEvents = True
        End If
    End If
End Sub

(根据您工作表中的实际列数/行数更改上面的列数和最小行数)。

关于Excel编程自动完成部分输入(数字),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4673446/

相关文章:

excel - 使用 UNIQUE 返回不同列的值

excel - 插件 - 此工作簿当前被另一个工作簿引用,无法关闭

excel - 我可以在不使用中键单击的情况下使 Excel 平滑滚动吗?

excel - 使用 unicode 字符从本地 HTML 中抓取表格

ms-access - 全局点击事件处理程序(WithEvents)

vba - Excel VBA For-Loop 仅在 Debug模式下运行

excel - 如果任何日期参数为空,则结果在 Excel 中应该没有值

javascript - 如何使用Office应用程序开发查找Excel工作表的坐标

excel - Excel散点图背景颜色可以根据数据值自定义吗?

vba - 查找范围内填充数据的最后一列