EXCEL VBA 如何将某工作表内复合条件的数据黏贴至其他不同工作表指定区域内?

作者&投稿:刁妍 (若有异议请与网页底部的电邮联系)
excel把满足条件的区域复制到另一张工作表的指定区域,用VBA实现。~

用VBA实现-->筛选数据-->定位可见行-->复制到相应表格
循环修改筛选条件,循环执行上面操作,搞定!
估计你也不会! 哈哈哈~~~~

以下代码,数据在sheet1的A到D列,表头在第二行
取前三个复制到H列

Set conn = CreateObject("adodb.connection")
conn.Open "provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=" & ThisWorkbook.FullName
Sql = "select top 3 * from [sheet1$A2:D] order by 销量 desc"
[H3].CopyFromRecordset conn.Execute(Sql)
conn.Close: Set conn = Nothing
[A2:D2].Copy [H2]

以下代码测试可行:

Sub copyToTable()

Dim i As Integer, sht As Worksheet

For i = 1 To Sheet1.Range("A1").End(xlDown).Row '从第1行到最后一行

 For Each sht In ThisWorkbook.Sheets  '在所有表单中查找

  If sht.Name = Sheet1.Range("A" & i).Text Then

 ' 如果表单名字与该单元格内容相同(A列最好先行设为文本格式,否则2020-01会变成月份的样子或转化为数值,无法相等)

     Sheet1.Range("A" & i & ":H" & i).Copy  '复制

     sht.Range("A1").PasteSpecial xlPasteAll '粘到到对应表单的A1格

  End If

 Next sht

 Next i

End Sub



Sub AA()
Dim i, n
For i = 2 To Range("A65536").End(xlUp).Row
For n = 1 To Sheets.Count
If Sheets(n).Name = Cells(i, 1).Text Then
arr = Range(Cells(i, 1), Cells(i, "h"))
Sheets(n).Cells(Sheets(n).Range("A65536").End(xlUp).Row + 1, 1).Resize(1, 8) = arr ' Range("A" & i & ":H" & i).Copy Sheets(n).Cells(Sheets(n).Range("A65536").End(xlUp).Row + 1, 1)
End If
Next
Next
End Sub

设置不同的变量,然后就可以进行对应的操作了


周至县15272295848: 请问如何用VBA实现将EXCEL中的一个工作表保存在指定文件夹内? -
蹉蚁肥儿: ThisWorkbook.Path 改成你需要的路径就可以了,比如改成 “C:",就在C盘根目录下

周至县15272295848: excel如何把同一个工作簿中,指定工作表合并到一张工作表上(请使用VBA) -
蹉蚁肥儿: 按ALT+F11调出VBA窗口,插入一个模块,然后把下面的代码复制进去.Sub hz()Set NewSheet = Sheets.Add(Type:=xlWorksheet) '生成一个新表Sheets(NewSheet.Index).Move Before:=Sheets(1) '将此新表移动到最前面For i = 2 To Worksheets.CountSheets(i).UsedRange.Copy NewSheet.Cells([a65536].End(xlUp).Row + 2, 1) '将其他表的已使用区域复制到新表中Next iMsgBox "合并完成" End Sub执行代码即可

周至县15272295848: excel 如何用 vba 批量提取指定工作表 -
蹉蚁肥儿: 放在thisbook的workbook的open方法下.dim n as integer dim names names="" for n=1 to worksheets().count-1 if worksheets(n).name like "(2)" then names=names&worksheets(n).name&char(13) next n msgbox names

周至县15272295848: Excel中,如何用vba实现另存为工作表?(去掉公式) -
蹉蚁肥儿: 1、首先,找到要进行操作的Excel表格,右键单击Excel图标,然后在弹出的右键菜单中选择打开命令.2、从打开的工作簿左下角的工作表标签可知,该工作簿默认生成工作表为一个. 3、按下组合键Alt+F11,即可快速调出VBA窗口. 4、在VBA界面中单击菜单栏中的插入,选择模块命令,此时会弹出一个另存为的模块窗口. 5、在另存为的模块窗口中复制粘贴以下代码: Sub New_worksheet() Sheets(1).Select Worksheets.Add End Sub 则会另存为sheet2工作表了.

周至县15272295848: 如何用VBA语言将多个EXCEL表中不同sheet表汇总到一个excel的不同sheet表中 -
蹉蚁肥儿: 1、打开需要汇总分析的Excel表格,选择Excel表格上方的“开发工具”选项. 2、然后点击“宏”按钮进行程序编写. 3、然后输入汇总程序的名称,点击编辑按钮. 4、写入程序代码,这里利用的是Do loop until和IF then 语句.汇总的要求为筛选出表格中男性、本科学历、在岗人员的名单. 5、在开发工具选项中选择插入一个按钮控件. 6、选中插入的按钮控件,单击鼠标右键选择“指定宏”选项. 7、将编写的汇总程序制定至按钮控件上,然后点击确定按钮. 8、点击按钮控件即可利用ExcelVBA程序完成对表格的汇总分析.

周至县15272295848: excel vba 引用工作表 -
蹉蚁肥儿: 软件版本:Office2013方法如下:1.利用VBA对C列数据求和:2.Alt+F11,输入代码如下:VBA中引用工作表函数,可以利用Application.worksheetFunction+函数名的方法3.F5执行代码,结果如下:

周至县15272295848: excel中,用VBA,如何根据条件,将已经存在的另一个工作表数据自动调出 -
蹉蚁肥儿: 试一下这一个 不过我有个疑问:工作表2的A2中的字段是名称,为什么要在里面输入编号来查找 sheet2中的结果数据从和第三行开始输出. 一定要将以下代码复制到sheet2的代码窗口才行,不明白的地方可以继续问我. Private Sub Worksheet_...

周至县15272295848: 如何用VBA把EXCEL表格娴绗ORD文档里 -
蹉蚁肥儿: 将Excel表格粘贴到PowerPoint中的方法有以下几种:方法1、选择Excel中的表格,按Ctrl+C或单击鼠标右键“复制”,然后在PowerPoint中单击鼠标右键,“粘贴选项”中,选择“保留目标格式”、“保留源格式”、“嵌入”或“图片”等需...

周至县15272295848: 在VBA中怎么把一个excel工作表或工作傅保存到其它表中? -
蹉蚁肥儿: 我的思路是:利用VBA文件操作打开Excel文件,然后读取你文件模板中特定位置的数据,保存到当前表中,然后可以当前表一行存储一个Excel文件.比如:源表中A1、B2、B5、C3是数据内容.可以依此保存到当前文件中的A1~D1.然后A2~...

周至县15272295848: 菜鸟提问excel中在vba中如何表示某个工作表的某个单元格 -
蹉蚁肥儿: color1=countcolor(sheets("工作表1").range("c1"),sheets("工作表2").range("a1:c9"))

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网