EXCEL中是否函数能解决此问题,还是一定要用VBA?
SHEET1表中A字段输入后,如何实现SHEET2表中的A字段,让其在SHEET1中输入的每行数据在SHEET2中自动产生三行,如下表:
SHEET1中有: (输入主表)
号码(A栏位) 栏位2(B栏位) 栏位3(C栏位)
14000
15000
16000
........
SHEET2中有:(次表中)
号码(A栏位) 栏位2(B栏位) 栏位3(C栏位)
14000
14000
14000
15000
15000
15000
16000
16000
16000
........
问题1:,SHEET2中A栏位从SHEET1中获取,重要的时如何实现从SHEET1中获取的每个单元格数据,在SHEET2中需生成同样号码三行数据,并以此类推...),要如何做?
问题2:实现问题1以后,如果要实现一按扭其功能是:假如删除SHEET1中的某行数据(如号码为14000行数据)时,SHEET2中对应的三号数据也删除(删除后不得留空行),这个恐怕是要用VBA实现了,如何做?
问题1如果不用VBA,用函数应该能实现吧..,问题2如果用VBA实现该如何写呢?.劳烦了.
[解决办法]
第一个问题就如1楼用indirect或offset函数就可以了
第二个问题,只要你开了工作簿自动更新,sheet1删除数据后,sheet2会自动更改的,无须VBA
[解决办法]
后面的栏位用VLOOKUP函数啊
[解决办法]
我估计你是下面这个要求把:
在sheet1里头放一个按钮, 关联下面 这个代码, 选择sheet1的一行 , 点击这个按钮就好了
sheet2的A列, 要根据A1=INDIRECT("sheet1!A" & INT((ROW()+2)/3)) 先下拉填充
Sub del3()
str1 = ActiveCell.Text
r = ActiveCell.Row
r = r & ":" & r
Sheets("Sheet2").Select
Columns("A:A").Select
Selection.Find(What:=str1, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, MatchByte:=False, SearchFormat:=False).Activate
r2 = ActiveCell.Row
r2 = r2 & ":" & (r2 + 2)
Rows(r2).Select
Selection.Delete Shift:=xlUp
Sheets("Sheet1").Select
Rows(r).Select
Selection.Delete Shift:=xlUp
End Sub