excel高手来答

来源:百度知道 编辑:UC知道 时间:2024/05/22 19:33:31
共有100行数据,在第101行输入一个数字时,整个数据会自动前移覆盖第一行的数字,但还是显示100行,比如1-100,后输入101 时,自动显示2-101,可以实现吗,能的话,请具体一点!

我来解决你定个问题:
1、假设你的数据在表Sheet1中的A1:A100
2、按Alt+F11 进入VBA编程界面
3、看看左边栏,找到Sheet1(这是我们假设你的数据所在的表,如果是别的名字,那就要找那个相应的表名),双击它
4、上述操作会在右边打开一个空白的书写程序的窗口,把下面的程序代码粘贴进去

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Row = 101 Then
Application.EnableEvents = False
Application.ScreenUpdating = False
Range("A2:A101").Copy Range("A1")
Range("A101").ClearContents
Application.ScreenUpdating = True
Application.EnableEvents = True
End If
End Sub

5、现在关掉这个编程窗口,回到你的Sheet1表,在A1:A100输入数据,这不会有任何事情发生,但你在A101输入数据时,你会发现事情按你所要求的那样发生了。

注意:因为这个表用到了VBA,所以,你必须通过“工具-宏-安全性”把你的宏安全性设置为“中”或“低”(验证时最好设置为低,这样可以保证程序绝对正常地运行)

祝你成功!

只能指出一个思路,你可以利用“宏”,功能进行处理,如果你学过编程的话,在宏里面进行编程,设计就很容易了 。。

可以实现
多问一句:你的目的是什么?达到目的估计有更简便的办法.