永发信息网

不同文件夹,两个excel工作簿,用vba同步

答案:4  悬赏:40  手机版
解决时间 2021-01-22 15:21
  • 提问者网友:ミ烙印ゝ
  • 2021-01-22 11:37
a文件夹是a工作簿,b文件夹是b工作簿,要求将a工作簿sheet1中的a,b两例用vba同步到b工作簿sheet1中的a,b两例,请高手帮帮忙啊,谢谢
最佳答案
  • 五星知识达人网友:野味小生
  • 2021-01-22 11:55
这个问题好像解决过呀,对应同名工作表,代码:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Count > 1 Then Exit Sub '仅处理修改单个单元格
Dim cnn As Object, SQL$, s$
Select Case True
Case Target.Value = ""
s = "null"
Case IsDate(Target.Value)
s = "#" & Target.Value & "#"
Case IsNumeric(Target.Value)
s = Target.Value
Case Else
s = "'" & Target.Value & "'"
End Select
Set cnn = CreateObject("ADODB.Connection")
cnn.Open "provider=microsoft.jet.oledb.4.0;extended properties='excel 8.0;hdr=no';data source=" & ThisWorkbook.Path & "\新建文件夹\Book2.xls"
SQL = "update [" & Sh.Name & "$" & Target.Address(0, 0) & ":" & Target.Address(0, 0) & "] set f1=" & s
cnn.Execute (SQL)
cnn.Close
Set cnn = Nothing
End Sub
全部回答
  • 1楼网友:零点过十分
  • 2021-01-22 14:52
Sub 宏1()     Dim wbA, abB, stA, stB     Set wbA = Workbooks.Open("a\a.xls")     Set stA = wbA.Sheets("sheet1")     Set wbB = Workbooks.Open("b\b.xls")     Set stB = wbB.Sheets("sheet1")     stA.Range("A:B").Copy stB.Range("A:B")     wbB.Save     wbA.Close     wbB.Close End Sub
  • 2楼网友:底特律间谍
  • 2021-01-22 13:34
sourcefile="模板文件夹\模板1文件" destinationfile ="存档文件夹\" & "查询编号的数字" & "后缀(.xls或.xlsx,与原文件的后缀相同) filecopy sourcefile, destinationfile ' 将源文件的内容复制到目的文件中 如果文件打开,复制出错。
  • 3楼网友:患得患失的劫
  • 2021-01-22 12:00
A工作簿里的VBA 编码 dim arr(65535),brr(65535) xlsFile1="D:\b\b.xls" //扩展名为.xls,b文件夹在D盘 Do If InStr(1, xlsFile, "a") = 0 Then ActiveWorkbook.Sheets("Sheet1").select //a工作簿的表1 for i=1 to 65535 arr(i)=ActiveWorkbook.Sheets("Sheet1").cells(i,1).value brr(i)=ActiveWorkbook.Sheets("Sheet1").cells(i,1).value next Workbooks.Open Filename:=adr1 & xlsFile1 //打开B工作簿 Windows(xlsFile1 & ".xls").Activate Application.DisplayAlerts = true for i=1 to 65535 ActiveWorkbook.Sheets("Sheet1").cells(i,1).value=arr(i) ActiveWorkbook.Sheets("Sheet1").cells(i,1).value=brr(i) next Application.DisplayAlerts = False ActiveWorkbook.Save Workbooks.Close Loop Until Len(xlsFile) = 0 懒得打。。自己看
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯