zoukankan      html  css  js  c++  java
  • 2017-5-17

    分享一个VBA的一个把一个sheet中的多个table(每一个table又hyperlinks),分配在不同的sheet中的方法,做这个真的也是耗费了不少的脑细胞。

    Option Explicit   ’这个是一个好习惯

    ’第一种方法,通过currentregion来判断区域,但是不是很保险

    Sub GetHplin()

    Dim arr(21) As Variant     ‘现在还不是很明白vba中的数组是怎么存放的

    Dim i, n As Integer

        With Worksheets("Sheet1")

            For i = 7 To 21 Step 2

            arr(i) = .Range("A" & i).Hyperlinks(1).SubAddress

        Sheets.Add after:=Sheets(Sheets.Count)

            Sheets(Sheets.Count).Name = Left(.Range(arr(i)).Text, 7)

            Worksheets("Sheet1").Activate

            Worksheets("Sheet1").Range(arr(i)).Offset(1, 0).CurrentRegion.Select

            Selection.Copy Destination:=Sheets(Sheets(Sheets.Count).Name).Range("A1")

            Next i

        End With

    End Sub

    ‘第二种方法,根据上下的行数来判断

    Sub example()

        Dim lastTableEndRow As Range

        Dim currentTableFirstRow As Range, currentTableLastRow As Range

        Dim iRow As Long 

        With Worksheets("Sheet1")

            Set lastTableEndRow = .Cells(Cells.Rows.Count, 1).End(xlUp)

            For iRow = 7 To 21 Step 2

                Set currentTableFirstRow = Range(.Cells(iRow, 1).Hyperlinks(1).SubAddress)

                If iRow = 21 Then

                    Set currentTableLastRow = lastTableEndRow

                Else

                    Set currentTableLastRow = Range(.Cells(iRow + 2, 1).Hyperlinks(1).SubAddress).Offset(-1, 0)                 

                End If   

                Debug.Print currentTableFirstRow.Address; currentTableLastRow.Address

            Next iRow     

        End With

    End Sub

    不知道这种觉得自己能力很差,一边学习,一边实习的时间还有多久过去,总之,已经很幸运可以做自己喜欢的事情。

    Anyway,加油吧!!!

  • 相关阅读:
    Finalize,Dispose,SuppressFinalize
    防火防盗防微软,Firefox发布插件自动检测服务
    Nginx的Rewrite设置及示例
    Linux游戏开发包 ClanLib 2.1.0 发布
    HTTP协议详解(真的很经典)
    Linux on POWER:发行版迁移和二进制兼容性考虑事项
    映射网络驱动器VBS脚本
    [笔记] 使用 opcache 优化生产环境PHP
    2020最新版MySQL数据库面试题(三)
    请注意,面试中有这7个行为肯定会被拒绝!
  • 原文地址:https://www.cnblogs.com/supvol/p/6871765.html
Copyright © 2011-2022 走看看