gpt4 book ai didi

vba - Excel VBA 循环遍历可见的过滤行

转载 作者:行者123 更新时间:2023-12-01 10:58:46 27 4
gpt4 key购买 nike

我有一个带有自动过滤器的 Excel 表格。

在过滤后的表中,我只过滤了几行。

我的目标是遍历所有可见行以收集数据以复制到另一张工作表。

我想要一种方法来收集具有第一个可见行号的变量。

我的草稿代码是:

Dim cnp As String
Dim nome As String
Dim filter_rng As Range
Dim rw As Range
Dim last_row As Long 'last visible data row
Dim dest_row As Long 'row to paste the colected data

Set filter_rng = Range("A5:Y" & last_row).Rows.SpecialCells(xlCellTypeVisible)
'collect data
For Each rw In filter_rng.SpecialCells(xlCellTypeVisible)
workshett(1).Activate
cnp = Range("a" & rw).Value
nome = Range("b" & rw).Value

'copy data to another worksheet first data line is cell A2
Worksheet(2).Activate
Range("A" & dest_row + 1).Value = cnp
Range("b" & dest_row + 1).Value = nome

Next rw

最佳答案

您的代码包含多个错误,并且您提供的额外信息很少,以便我们帮助您,而是尝试一下。

请查看下面的代码并与您的代码进行比较,下面的代码最接近您正在尝试执行的操作,并且已经过测试和工作。

Dim cnp As String
Dim nome As String
Dim filter_rng As Range
Dim rw As Range
Dim last_row As Long 'last visible data row
Dim dest_row As Long 'row to paste the colected data

last_row = 200
dest_row = 1

Set filter_rng = Sheets(1).Range("A5:Y" & last_row)

'collect data
For Each rw In filter_rng.SpecialCells(xlCellTypeVisible)
'Worksheets(1).Activate
cnp = Sheets(1).Range("A" & rw.Row).Value
nome = Sheets(1).Range("B" & rw.Row).Value

'copy data to another worksheet first data line is cell A2
'Worksheets(2).Activate
Sheets(2).Range("A" & dest_row + 1).Value = cnp
Sheets(2).Range("B" & dest_row + 1).Value = nome

Next rw

关于vba - Excel VBA 循环遍历可见的过滤行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33249555/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com