VBS读取txt文档数据查找Excel中单元格数据符合条件的剪切到工作表2中

Posted 文刀文刀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBS读取txt文档数据查找Excel中单元格数据符合条件的剪切到工作表2中相关的知识,希望对你有一定的参考价值。

 

 

 

Dim fso,f,a
set oExcel = CreateObject( "Excel.Application" )
oExcel.Visible = false
4) 打开已存在的工作簿:
oExcel.WorkBooks.Open( "F:\1.xlsx" )
On Error Resume Next
判断是否存在Sheet2工作表,不存在新建
If oExcel.WorkSheets("Sheet2") Is Nothing Then
    MsgBox "不存在,开始执行"
    oExcel.Worksheets.Add
Else MsgBox "存在"
End If
5) 设置第1个工作表为活动工作表:
oExcel.WorkSheets("Sheet1").Activate
读取txt文档
Set fso = CreateObject("Scripting.FileSystemObject")
Set f=fso.OpenTextFile("D:\UnexistFile.txt",1)
逐行读取并赋值到变量a,Do...loop循环
DO While f.AtEndOfStream <> True
 i = 1
 a=f.ReadLine 
 msgbox a 
 oExcel.WorkSheets("Sheet1").Activate
 
 Do while oExcel.Cells(i,4).Value <> "" 查找A列中所有的单元格
    设置某个单元格中的数据赋值到变量
    b=oExcel.Cells(i,4).Value
    c=oExcel.Cells(i,17).Value
    d=oExcel.Cells(i,21).Value
    e=oExcel.Cells(i,21).Value
    判断单元格数据是否与txt数据相等
    if oExcel.Cells(i,4).Value = a then i是行,4是列
        oExcel.Cells(i,4).font.color = vbred ‘设置字体底色为红色
        msgbox "行"&i &"列"        
        oExcel.ActiveSheet.Range("A" & i & ":" & "X" & i).Cut
        oExcel.WorkSheets("Sheet2").Activate
        oExcel.ActiveSheet.Range("A1:X1").Insert
        oExcel.WorkSheets("Sheet1").Activate
        oExcel.ActiveSheet.Rows(i).Delete

    ElseIf Instr(b,a)>1 then  判断txt的数据是否被包含在单元格中
        msgbox "行"&i &"列"        
        oExcel.ActiveSheet.Range("A" & i & ":" & "X" & i).Cut
        oExcel.WorkSheets("Sheet2").Activate
        oExcel.ActiveSheet.Range("A1:X1").Insert
        oExcel.WorkSheets("Sheet1").Activate
        oExcel.ActiveSheet.Rows(i).Delete
    Elseif oExcel.Cells(i,22).Value = a then
        msgbox "行"&i &"列"        
        oExcel.ActiveSheet.Range("A" & i & ":" & "X" & i).Cut
        oExcel.WorkSheets("Sheet2").Activate
        oExcel.ActiveSheet.Range("A1:X1").Insert
        oExcel.WorkSheets("Sheet1").Activate
        oExcel.ActiveSheet.Rows(i).Delete
        EXIT do
    
    end if
    i = i+1
 loop

loop

oExcel.ActiveWorkBook.Save
oExcel.WorkBooks.Close
oExcel.Quit
set oExcel = nothing
msgbox "操作完成"

 

以上是关于VBS读取txt文档数据查找Excel中单元格数据符合条件的剪切到工作表2中的主要内容,如果未能解决你的问题,请参考以下文章

Office表中如何把一定范围单元格的内容多列数据去除空值以TXT文本方式导出?

pandas设置excel单元格日期类型分秒

VBA 将 excel 单元格数据导出到 .txt 文件中

如何使用 VBSCript 在 Excel 中查找合并单元格的开始行和结束行?

java如何解析excel一个单元格中逗号分隔的数据

python实例:从excel读取股票代码,爬取股票信息写到代码后面的单元格中