zoukankan      html  css  js  c++  java
  • 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 "操作完成"
  • 相关阅读:
    wxGlade: a GUI builder for wxWidgets/wxPython
    wxPython or PyQt or PySide哪一个比较好
    wxpython学习笔记
    C++实现发送HTTP请求 CoderZh 博客园
    Lucene如何分布式(WWW与Lucene服务器分离)
    MVC中一个表单实现多个提交按钮(一个action搞定添删改)
    何为.Net Remoting
    Lucene实用的分词匹配
    我心中的核心组件(可插拔的AOP)~第十四回 全文检索架构~终于设计了一个自己满意的Lucene架构
    【学习opencv第五篇】霍夫线变换
  • 原文地址:https://www.cnblogs.com/liuliu-word/p/7434891.html
Copyright © 2011-2022 走看看