excel中当表1中A列输入自动填到表2中的A列中,如何表1中A列再输入时,让数据填到表2的B列 ……

2024-11-21 17:12:40
推荐回答(2个)
回答(1):

以上内容无法用公式自动完成,建议用VBA代码。
VBA(Visual Basic For Applications)是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。VBA是Visual Basic的一个子集,VBA不同于VB,原因是VBA要求有一个宿主应用程序才能远行(需要在EXCEL等软件的运行下才能运行),而且不能用于创建独立应用程序。而VB可用于创建独立的应用程序。VBA可使常用的过程或者进程自动化,可以创建自定义的解决方案,最适用于来定制已有的桌面应用程序。
以下代码可实你的提问:
Sub 自动填充()
Dim i As Integer
lastcolumn = Worksheets("Sheet2").UsedRange.SpecialCells(xlCellTypeLastCell).Column
lastrow = Worksheets("Sheet1").UsedRange.SpecialCells(xlCellTypeLastCell).Row
Worksheets("Sheet2").Select
For i = 1 To lastrow
If Cells(i, 1) = "" Then
Worksheets("Sheet2").Cells(i, 1) = Worksheets("Sheet1").Cells(i, 1)

Else
Worksheets("Sheet2").Cells(i, lastcolumn + 1) = Worksheets("Sheet1").Cells(i, 1)
End If
Next
End Sub
具体用法如下:
ALT+F11打开VBE编辑窗口,双击thisworkbook打开对应的窗口,将以上代码复制到打开的窗口中,保存。返回工作表;工具--选项-安全性--宏安全性--中--确定。保存并关闭工作簿。
打开工作簿--启用宏
在sheet工作表中--插入一个文本框--输入录入--右击--指定宏--找到自动填充--双击--确定
在A工列输入数据后单击录入即可得到所要的结果。注意sheet2中的单元格不能进行格式设置.这是该代码的缺点.但何进行行高和列宽的调整.

回答(2):

用VBA吧还有可能,用公式是不可能实现的