请问: vba, excel中打开多个xls文件, 搜索字符串,写入另一个sheet的问题
来源:互联网 发布:电大与网络教育双学籍 编辑:程序博客网 时间:2024/06/02 02:34
目的: 打开一个"办公文具"的sheet,搜索其中"@yahoo"的字符串(包括@yahoo.com, @yahoo.cn等),将此单元格的内容复制到一个新的sheet里.直到整个"办公文具"sheet搜索完毕.
Sub 宏1()
'
' 宏1 Macro
'
'
Sheets("办公文具").Select
Sheets.Add.Name = "bak13"
Sheets("办公文具").Select
Range("B1").Select
Cells.Find(What:="@yahoo", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate
'Range("B13").Select
'Selection.Copy
'Sheets("bak2").Select
'ActiveSheet.Paste
'Range.Next
'Sheets("办公文具").Select
'Application.CutCopyMode = False
'Cells.FindNext(After:=ActiveCell).Activate
'While Cells.Text <> Null
Selection.Copy
Sheets("bak13").Select
'ActiveSheet.ActiveCell.
ActiveSheet.Paste
ActiveCell.Next <----问题出在这里
Sheets("办公文具").Select
Application.CutCopyMode = False
Cells.FindNext(After:=ActiveCell).Activate
'Cells.Find.
'Wend
End Sub
另外还有一个问题:
如果某个目录下有多个xls文件(包括"办公文具.xls"文件),每个文件里都有一个sheet,情况类似"办公文具sheet".
请问: 如何能够轮流打开全部的xls文件,将当中的sheet中符合"@yahoo"条件的单元格力的内容, 复制到"bak13" 这一个sheet里?
--------------------
请参照:
下面代码完成的功能,就是在sheet1中查找@yahoo,然后copy到sheet2中.测试过了可以使用
- VBScript code
- Sub FindStrings() Dim firstCell, nextCell, stringToFind As String Dim nCursor As Integer stringToFind = "@yahoo" nCursor = 1 nextCell = "" Sheet1.Select Range("A1").Select Range("A1").Activate Set firstCell = Cells.Find(What:=stringToFind, After:=ActiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False) If firstCell Is Nothing Then MsgBox "Search Value Not Found.", vbExclamation Else Sheet2.Cells(1, nCursor).Value = firstCell nCursor = nCursor + 1 Do While firstCell.Address <> nextCell If nextCell = "" Then nextCell = firstCell.Address End If nextCell = Cells.FindNext(After:=Range(nextCell)).Address If firstCell.Address <> nextCell Then Sheet2.Cells(1, nCursor).Value = Range(nextCell).Value nCursor = nCursor + 1 End If Loop End If End Sub-----------------------
- >请问: 如何能够轮流打开全部的xls文件,将当中的sheet中符合"@yahoo"条件的单元格力的内容, 复制到"bak13" 这一>个sheet里?
这个应该不是难事,就是你把所有的xls放到一个目录里面
如下代码- VBScript code
- Dim path As String path = "d:/work" FileName = Dir(path & "/*.xls") FileName = path & "/" & FileName Do While FileName <> "d:/work/" ...... FileName = Dir FileName = path & "/" & FileName Loop-----------
未完:
http://topic.csdn.net/u/20080414/12/37f8af2d-9b74-495a-b14f-24b6e3f9496f.html
- 请问: vba, excel中打开多个xls文件, 搜索字符串,写入另一个sheet的问题
- Delphi操作EXCEL复制Sheet到另一个XLS文件中
- 【整理】Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据
- excel中利用vba合并多个sheet页和合并多个excel文档
- 用VBA实现把多个Excel文件合并到一个Excel文件的多个工作表(Sheet)里
- 将Dataset中的多个DataTable导入到一个Excel文件的多个Sheet中
- MFC学习之 将 list 表里的信息写入.txt文本 和 .xls EXCEL 文件中
- Office 2010 中打开多个Excel文件只能在同一窗口中显示的问题
- Office 2010 中打开多个Excel文件只能在同一窗口中显示的问题
- Office 2010 中打开多个Excel文件只能在同一窗口中显示的问题
- Office 2010 中打开多个Excel文件只能在同一窗口中显示的问题
- excel文件里有多个sheet,把每个sheet全部导出为单独的xls或xlsx
- VBA打开已加密的Excel文件
- ASP.NET将数据导出到一个EXCEL文件的多个SHEET中
- 多个Excel文件中的多个Sheet合并到一个Excel文件中两个函数
- 从CSV文件转换为Excel的多个Sheet
- Python读取txt内容写入xls格式的excel中
- 如何在VB中打开一个Excel文件并调用Excel文件自身的VBA宏?
- Excel-VBA文件操作3
- Excel-VBA文件操作4
- Excel-VBA文件操作5
- [求助] 导入多个未打开的Excel文件数据的问题
- 获取Blackberry Device相关信息
- 请问: vba, excel中打开多个xls文件, 搜索字符串,写入另一个sheet的问题
- VBA中如何打开一个文件夹内的所有EXCEL文件?
- VBA实现保存Excel多个工作表中的选择区域为CSV文件
- JAVA多线程CyclicBarrier应用
- Blackberry平台开发,教程,范例
- 约瑟夫问题 pku1012(转自奋斗青春(亚伟)blog)
- 关于excel->csv文件的转换需要使用宏,高分求助- VB / VBA
- 上班
- 获得视频文件编码格式