vb,vbA操作EXCEL怎么把指定数据复制到另一工作表符合条件的相应位置?

怎么实现对数据库的调取并修改,但不在数据库中直接修改,(注:数据库工作表除序号列A列不变外,对应的B,C,D,、、、在修改工作表中通过输入序号变量调取相应信息,修改姓名、... 怎么实现对数据库的调取并修改,但不在数据库中直接修改,(注:数据库工作表除序号列A列不变外,对应的B,C,D,、、、在修改工作表中通过输入序号变量调取相应信息,修改姓名、地址等值后保存到数据库对应序号行对应列,实际数据库有近40多个列上千行,序号是连续且唯一的,这里只列举了三个列,谢谢!)另外,现在只解决了输入序号调出相关信息即第三行我可以用函数调取,差保存修改值这步 展开
 我来答
柔软的Bp
科技发烧友

2019-01-05 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:3万
采纳率:66%
帮助的人:8999万
展开全部
Sub 修改并保存()
Dim I
X = WorksheetFunction.Match([B1], Sheets("基础数据").Range("A:A"), 0)
Range("A3:D3").Copy Sheets("基础数据").Cells(X, "a")
Sheets("基础数据").Select
Sheets("基础数据").Range("a" & X & ":" & "d" & X).Interior.ColorIndex = 3 '修改过的区域填充红色
End Sub

代码复制到 修改表里

追问
因为修改表里是套用了公式的,点击修改后,基础数据库里被修改的部分变成函数公式了,所以需要填充为值,也就是基础数据里都是不带公式的,(为方便查看以往数据,所以用笨办法通过函数调用要修改序号的行的数据库数据,所以修改表中所看到的实际是公式或函数调取的,通过输入序号数频繁调取基础数据查看并修改保存)
追答
Sub 修改并保存()
Dim x
x = WorksheetFunction.Match([B1], Sheets("基础数据").Range("A:A"), 0)
arr = Range("A3:D3")
Sheets("基础数据").Cells(x, "a").Resize(1, 4) = arr
Sheets("基础数据").Select
Sheets("基础数据").Range("a" & x & ":" & "d" & x).Interior.ColorIndex = 3 '修改过的区域填充红色
End Sub
三条桥聚星
2019-01-05 · TA获得超过2万个赞
知道答主
回答量:123
采纳率:42%
帮助的人:23.7万
展开全部
Sub 修改()
Dim i%,j%
For i=2 to 5000

if sheets(2).cells(i,"A")=sheets(1).cells(1,"B") then

sheets(2).cells(i,"B")=sheets(1).cells(2"B")
sheets(2).cells(i,"C")=sheets(1).cells(2"C")
sheets(2).cells(i,"D")=sheets(1).cells(2"D")
end if

Next i
End Sub
追问

不得行

追答
OK了,刚才漏了“,”。
Sub 修改()
Dim i%,j%
For i=2 to 5000

if sheets(2).cells(i,"A")=sheets(1).cells(1,"B") then

sheets(2).cells(i,"B")=sheets(1).cells(2,"B")
sheets(2).cells(i,"C")=sheets(1).cells(2,"C")
sheets(2).cells(i,"D")=sheets(1).cells(2,"D")
end if

Next i
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式