精华内容
下载资源
问答
  • Excel VBA 根据Sheet2中的表格数据处理Sheet1中的数据,包括:1,对sheet1和sheet2指定数据的循环比较;2,符合条件的数据复制至sheet1中,并且用表格颜色进行标记
  • 今天项目上有个应用,获取指定Excel文件下的所有sheet的名称以及当前sheet中指定单元格的值,并把他们写到固定的sheet中去,看了下,文件比较多,而且每个文件sheet的个数比较多,也不一样,所以打算写个程序来帮...

    https://www.cnblogs.com/mq0036/p/4195836.html
    今天项目上有个应用,获取指定Excel文件下的所有sheet的名称以及当前sheet中指定单元格的值,并把他们写到固定的sheet中去,看了下,文件比较多,而且每个文件sheet的个数比较多,也不一样,所以打算写个程序来帮我们实现任务,代码很简单,也写的比较死板。欢迎大家给出意见及你的代码:

    Sub aaaa()
    Dim sh1, sh2 As Worksheet
    Dim shName, cellValue As String
    'On Error Resume Next
    
    Set sh1 = Workbooks(1).Sheets(1)
    'Workbooks.Open Filename:="D:\_jack\Finance Report\Report Layout\TA Opex Report 2014.xlsx"
    Workbooks.Open Filename:="D:\_jack\Finance Report\Report Layout\Rolling PL Template v1 (2).xlsx"
    
    For i = 1 To Workbooks(2).Worksheets.Count
        Workbooks(2).Activate
        Set sh2 = ActiveWorkbook.Worksheets(i)
        sh2.Activate
        n = sh2.Name
        'v = sh2.Cells(5, 7).Value  'G5单元格
        v = sh2.Cells(4, 3).Value  'C4单元格
        
        Workbooks(1).Activate
        sh1.Activate
        sh1.Cells(i, 1) = n
        sh1.Cells(i, 2) = v
        
    Next
    Workbooks(2).Close
    End Sub
    
    展开全文
  • Excel vba 循环查找sheet的值findnext

    千次阅读 2019-07-11 17:33:54
    With Worksheets("Data").Columns("G:G") Set c = .Find(Worksheets("Data").Cells(mrgRow, 2).Value, LookIn:=xlValues) If Not c Is Nothing Then firstAddress =...
            
    
    With Worksheets("Data").Columns("G:G")
            Set c = .Find(Worksheets("Data").Cells(mrgRow, 2).Value, LookIn:=xlValues)
             If Not c Is Nothing Then
                 firstAddress = c.Address
                 Do
                      msgbox (c.Row)
                       Set c = .FindNext(c)
                 Loop While Not c Is Nothing And c.Address <> firstAddress
               End If
    End With
    

     

                               

    转载于:https://www.cnblogs.com/alicesunBlog/archive/2013/03/27/2983899.html

    展开全文
  • 利用VBA遍历Excel所有sheet的例子

    千次阅读 2015-12-11 17:47:00
    下面是利用VBA遍历Excel sheet的例子,可以用于Excel的批量处理。 Sub Insert_CodeString() Dim fs, ft As Object Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel....

    下面是利用VBA遍历Excel sheet的例子,可以用于Excel的批量处理。

    Sub Insert_CodeString()
    
    Dim fs, ft As Object
    Dim xlApp As Excel.Application
    Dim xlBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet
    
    Dim Sql As String
        Sql = "truncate table code_string;" & Chr(10)
    Dim line As Integer
    
    Set fs = CreateObject("scripting.filesystemobject")
    Set ft = fs.createtextfile(ThisWorkbook.Path & "\" & "Insert_CodeString" & ".sql")
    
    Set xlBook = ThisWorkbook
    
    
    For x = 1 To xlBook.Sheets.Count
    
        Set xlSheet = xlBook.Sheets(x)
        
        If xlSheet.Cells(3, 1) = "代码编号" Then
    
            line = 8
            Sql = Sql & Chr(10) & Chr(10) & "--" & xlSheet.Cells(4, 2) & Chr(10)
            
            Do
                Sql = Sql & "Insert Into CODE_STRING ( CODE_TYPE,CODE_TYPE_DESC,CODE_VALUE,CODE_DESC,CODE_FLAG ) Values ( '" & xlSheet.Cells(3, 2) & "','" & xlSheet.Cells(4, 2) & "','" & xlSheet.Cells(line, 2) & "','" & xlSheet.Cells(line, 3) & "','1');" & Chr(10)
                line = line + 1
            Loop Until Len(xlSheet.Cells(line, 1).Value) = 0
            
        End If
        
    Next x
    
    Sql = Sql & Chr(10) & Chr(10) & "commit;" & Chr(10)
    
    ft.WriteLine (Sql)
    ft.Close
    
    Set ft = Nothing: Set fs = Nothing
    
    End Sub

     

    转载于:https://www.cnblogs.com/wanggs/p/5039778.html

    展开全文
  • VBA 选定sheet方法总结

    万次阅读 2018-09-03 16:57:10
    假定Excel共有2个sheet,分别是SIS、Sheet1,而实际后台名称是Sheet2、Sheet1,如下图: 1、Worksheets(2).select  同Sheets(2).select ,指由左至右第2个Sheets,即Sheet1,包含隐藏sheet! 2、Worksheets(&...

    假定Excel共有2个sheet,分别是SIS、Sheet1,而实际后台名称是Sheet2、Sheet1,如下图:

    1、Worksheets(2).select 

    Sheets(2).select ,指由左至右第2个Sheets,即Sheet1,包含隐藏sheet!

    2、Worksheets("Sheet1").select

    Sheets("Sheet1").select ,直接选中指定名称的sheet,双引号内为sheet名称,选中Sheet1

    3、Sheet2.select

    指定名称属性,选中的是SIS

     

    ------------

    多个sheet循环操作

    For Each sh In Workbooks(rpt_name).Sheets(Array("Sheet1", "Sheet2", "Sheet3", "Sheet4"))   --双引号内为sheet名称
    
    sh.UsedRange.Value = sh.UsedRange.Value    --去公式
    
    next sh
    
    For Each sh2 In Worksheets(Array(6, 7, 8, 9, 10, 11, 12, 13, 14))   --按序列选中
                    
       sh2.Delete
            
    Next sh2
    --按名称条件,选中多个sheet
    i = 0
    
      For Each ws In Worksheets
        If InStr(ws.Name, "费用清单") <> 0 Then
    
         i = i + 1
         ReDim Preserve arr(1 To i)
         arr(i) = ws.Name
    
        End If
    
      Next
    
      If i > 0 Then
    
        Worksheets(arr).Select
    
      End If
    
    --按顺序选中sheet
     If ActiveSheet.Index <> Worksheets.Count Then
    
      ActiveSheet.Next.Activate
    
     end if

     

    展开全文
  • VBA获取所有Sheet名字

    2021-07-16 17:35:42
    oleobject o_WorkBook long ll_Row,ll_RowCount,ll_NewRow String ls_SheetName o_WorkBook = Message.PowerObjectParm ll_RowCount = o_WorkBook.Worksheets.Count FOR ll_Row = 1 TO ll_RowCount ...
  • EXCEL VBA创建sheet/工作簿

    万次阅读 2019-05-29 11:02:34
    1.需要创建以地市命名的系列sheet,但不想手动创建改名。 代码实现如下: Sub SheetAdd() Dim i As Long '定义一个长整型变量 Sheets.Add After:=Sheets(Sheets.Count), Count:=Sheets(1).Range("A" &...
  • ' 表制作循环sheet页变量 i = 2 ' 词根循环变量 j = 2 '替换后字符串 replaceStr = "" '判断字符串是否在词根存在 ifExists = 0 '判断表制作sheet页的单元格是否为空,不为空才遍历 Do While Not IsEmpty...
  •  '遍历所有工作表(sheet)  For i = 1 To ActiveWorkbook.Worksheets.Count  '下面这句,亦可以用ActiveWorkbook.Worksheets(i).Activate 进行替代,代表激活此工作表  ActiveWorkbook.Worksheets(i).Select...
  • 获取当前sheet列表 Sub GetSheetList() Dim sht As Object '// sheet Dim s As String '// 追加sheet名 Dim i As Long '// loop count '// 追加sheet Call Sheets.Add(After:=Sheets(Sheets.Count)) s = ...
  • 针对需要批量处理大量的Sheet改名的场景,使用VBA是非常便捷的方式。 简单介绍几种方法: 1. 录制宏法: 录制宏是用Excel自带的工具把改名改成一个可以复制操作的动作。 这里选择录制,会弹出一个宏设置窗口:...
  • VBA 遍历是sheet

    千次阅读 2012-03-15 12:17:59
    Dim sht As Excel.Worksheet  For Each sht In ThisWorkbook.Worksheets  msgbox sht.name  Next 上面的红色部分不能使用sheets,有时候会报错!
  • 先写一个公用的方法,只需要传入各系统的连接字符串,与SHEET名 代码注释很详细 需注意的是,时间字符串 需要用Format(X, "yyyy-mm-dd HH:MM") 进行转换,否则会显示为数值 Private Sub GetData(strCn As String...
  • VBA实现多个Sheet页匹配关键字并汇总

    千次阅读 2018-06-06 10:36:28
    初次写博客,错误之处请包涵。... 实现思路:打开excel,新建一个新sheet页,运行宏,在用户界面输入需要匹配的关键字,多个关键字按照英文逗号隔开,点击确认,循环sheet页进行匹配,并写入新建...
  • 很多同学想学习VBA,却没有勇气,下面是我VBA入门直播课程中的知识点,参加了培训的同学请自己对照下是否掌握了。其它有基础知识的同学也可以自检下。(报名培训班请加微信:527240310)第一讲:...
  • 'sheet循环 For j = 1 To Sheets.Count '如果不是当前活动sheet If Sheets(j).Name <> ActiveSheet.Name Then '有内容的行中加入边框 Sheets(j).UsedRange.Borders.LineStyle = xlContinuous '与下一个...
  • 获取某个sheet表最后一行的行号,对于使用vba进行循环查找是必经的过程: 通过我最近的学习发现2中方法进行使用,现在分享如下: 如下表格示例: 方法一: Public Sub test() Dim lastRow As Long lastRow =...
  • 循环内退出 Do...Loop 语句 使用 For...Next 语句 使用 For Each...Next 语句 对某范围的单元格做循环 在完成前退出 For Each...Next 循环 使用 Do...Loop 语句 可以使用 Do...Loop 语句去运行语...
  • Sub aaaa() '行 For i = 1 To Sheet1.Range("A65535").End(xlUp).Row If Sheet1.Cells(i, 1) Then Sheet2.Cells(i, 1) = Sheet1.Cells(i, 1) Else 'asdfasdf ...
  • 今天项目上有个应用,获取指定Excel文件下的所有sheet的名称以及当前sheet中指定单元格的值,并把他们写到固定的sheet中去,看了下,文件比较多,而且每个文件sheet的个数比较多,也不一样,所以打算写个程序来帮...
  • Sub delSheet() Dim x As Worksheet Application.DisplayAlerts = False For Each x In Sheets If IsEmpty(x.UsedRange) And x.Shapes....程序如上,笔者使用EXCEL2007,上百个工作表中删除空白无内容的SHEET。 ...
  • 什么是VBA VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。 怎么使用Excel的VBA来处理处理重复性问题 Excel本身就自带...
  • Excel:VBA 数据分析 写一个for循环的单元格判断程序(四 还是那张测试表。 本文要实现的逻辑是:在 F列 实现对 E列 的判断并显示结果。当E列 的单元格 分数 大于 90 分时,则 F列 应该显示判断结果为优秀;当 E列 ...
  • VBA增加sheet,如何在出现重名时自动命名?如  Sheets.Add ActiveSheet.Name = "mysheet" 如果已经存在名称为“mysheet”的sheet,如何使增加的sheet名称自动加上一个括号变成"mysheet(1)"呢?...
  • 3、根据工作表数量进行循环,然后打印,打印份数默认设为1份。 EXCELVBA代码如下: Sub test() Dim ws As Worksheet For Each ws In Worksheets If ws.Visible = xlSheetV...
  • VBA-遍历工作表的方法

    千次阅读 2020-02-24 15:50:13
    遍历工作表的方法 在工作中,经常需要遍历工作表,这里展示最基本的功能,查询工作表的个数,其余功能大同小异: #方法一 Sub test() Dim i As Integer Dim s As Integer For i = Worksheets.Count To 1 Step -1 ...
  • Sub 遍历一个文件夹里的excel文件...'cd C:\VBA 'dir >1.txt '但是这样并没有把文件名给单独列出来? Rem 用python 怎么写? Dim a As Object Dim path path = ThisWorkbook.path Rem set a = *...
  • For Each 循环 第一块内容:For Each循环 Sub test1() Dim ge As Range'把变量ge定义为Range(rng)类型,单元格变量/区域变量 For Each ge In Range("A1:A10")'在单元格区域A1:A10范围内,循环查找单元格 ge = 1...
  • 为什么VBA这么灵活,一个问题,百度下有好多种答案! 虽然有些错的,大多数不同的方法还都能行,佩服! 这个出错语句判断这个真好 Sub t1() a = InputBox("请输入要查找的sheet名") On Error GoTo 100 ...
  • vba遍历并复制

    2020-11-16 08:58:20
    Sub addtable() ' ' addtable Macro ' 宏由 Administrator 录制,时间: 2020/11/15 ' ' Dim number,numberstart number = Sheets("汇总").UsedRange.Rows.Count numberstart = number - 11 Dim a As String ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,716
精华内容 686
关键字:

vba循环sheet