Как извлечь объединенные данные и поместить их в разные листы? - PullRequest
1 голос
/ 05 февраля 2020

Как использовать Excel vba для выборочного извлечения объединенных данных (без ручного щелчка и копирования с листа Excel, а также без специального перечисления диапазона данных, которые я хочу скопировать. То, что я хочу, таким образом, чтобы Программа извлекает всю строку с именем одного и того же типа из столбца F в столбец H, например Martin_1, Martin_2 и Martin _3 соответственно для разных имен (John, Charl ie), и копирует и вставляет их в новый лист.

enter image description here

Поместите извлеченные данные в 3 различных листа, а именно: индекс 1, индекс 2 и индекс 3, как показано ниже enter image description here enter image description here enter image description here

Вот моя попытка кода:

dim i as integer
dim lastmartinrow as integer
dim c as string
dim j as integer
dim lastjohnrow as integer
dim b as string
dim k as integer
dim lastcharlierow as integer
dim a as string

for i = 1 to lastmartinrow
Set c = .Find("Martin_1","Martin_2",Martin_3" LookIn:=xlValues)
If c Is Nothing Then
'find the last row has the same "Martin_1","Martin_2","Martin_3") 
'copy the entire rows from 1 to lastmartinrow and paste it to a new worksheet("Index1").name
for j = lastmartinrow + 1 to lastjohnrow
Set b = .Find("John_1","John_2","John_3" LookIn:=xlValues)
If b Is Nothing Then
'find the last row has the same "John_1","John_2","John_3") 
'copy the entire rows from lastmartinrow + 1 to lastjohnrow and paste it to a new worksheet("Index2").name
for k = lastjohnrow + 1 to lastcharlierow
Set a = .Find("Charlie_1","Charlie_2",Charlie_3" LookIn:=xlValues)
If a Is Nothing Then
'find the last row has the same Charlie_1","Charlie_2",Charlie_3") 
'copy the entire rows from lastjohnrow + 1 to lastcharlierow and paste it to a new worksheet("Index3").name

ошибка для обновленного кода enter image description here Поскольку ранее я не сохранял электронную таблицу при ее сбое, поэтому это новый лист1, который я сейчас использую .. [! [Введите описание изображения здесь] [6]] [6]

1 Ответ

1 голос
/ 05 февраля 2020

Я создал общий код c, он скопирует все совпадающие значения (Джон, Марин, Чарль ie и т. c), присутствующие в столбцах F, в H и вставит его на лист Index3. Он не будет копировать значения с использованием единственной строки, которые не совпадают ни с одной другой строкой (сразу после этого).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...