By Тимоти Во вторник, 04 января 2022
Опубликовано в Excel
Ответы 1
Лайк 0
Просмотры 5.2K
Голосов 0
Любовь сообщество

Я хочу найти folgendes Anliegen und habe bereits mehrere Tutorials durchgeschaut. Doch leider klappt es immernoch nicht.
Ich hab 3 Tabellenblätter und möchte eine ganze Zeile in ein neues Tabellenblatt (ЕЖЕНЕДЕЛЬНОЕ ОБСУЖДЕНИЕ) kopieren, wenn eine bestimmte Bedingung (Criteria) erfüllt ist.

Теперь я могу использовать макросы и следовать коду.
Zunächst wurde nur die Information aus einem Tabellenblatt angezeigt, obwohl mein Code alle 3 Tabellenblattter anzeigt. Dann habe ich gedacht, dass ich ja die letzte Zeile nicht immers als A1 bezeichnen kann, weil die Informationen immer überschreiben werden. Так хаб их "CopyToRange" в коде. Bei nochmaligem updaten kann dann aber eine Fehlermeldung und es wurde nichts mehr angezeigt.

Был ли это meinem Code falsch?
Wie bekomme ich bestimmte Zeilen aus mehreren Tabellenblättern in eine neue Übersichtstabelle? Все таблицы отображаются в Excel-Datei (шаблон с поддержкой макросов).

Я видел это, когда его попросили помочь.
Герцлихен Данк им Ворфельд.
Тимоти





Подфильтр_TeamUpdate()
'
' Макрос Filter_TeamUpdate
' Тимоти
'
lngLastRowANNA = Sheets("ANNA").Cells(Rows.Count, 1).End(x1Up).Row
lngLastRowJULIA = Sheets("JULIA").Cells(Rows.Count, 1).End(x1Up).Row
lngLastRowANDREA = Sheets("ANDREA").Cells(Rows.Count, 1).End(x1Up).Row
lngLastRow = ActiveSheet.UsedRage.Row(ActiveSheet.UsedRage.Rows.Count).Row


Листы("ЕЖЕНЕДЕЛЬНОЕ ОБСУЖДЕНИЕ").Выбрать

Sheets("ANNA").Range("A1:H" & lngLastRowANNA).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange: = Sheets ("CRITERIAS"). Range ("A2: H" & lngLastRowANNA), CopyToRange:=Диапазон("A1") _
, Уникальный: = Ложь

lngLastRow = Sheets("ЕЖЕНЕДЕЛЬНОЕ ОБСУЖДЕНИЕ").Cells(Rows.Count, 1).End(x1Up).Row

Sheets("JULIA").Range("A1:H" & lngLastRowJULIA).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Листы("CRITERIAS").Range("A2:H" & lngLastRowJULIA), CopyToRange:=Range("A" и lngLastRow + 1) _
, Уникальный: = Ложь

lngLastRow = Sheets("ЕЖЕНЕДЕЛЬНОЕ ОБСУЖДЕНИЕ").Cells(Rows.Count, 1).End(x1Up).Row

Sheets("ANDREA").Range("A1:H" & lngLastRowANDREA).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange: = Sheets ("CRITERIAS"). Range ("A2: H" & lngLastRowANDREA), CopyToRange:=Range("A" и lngLastRow + 1) _
, Уникальный: = Ложь

lngLastRow = Sheets("ЕЖЕНЕДЕЛЬНОЕ ОБСУЖДЕНИЕ").Cells(Rows.Count, 1).End(x1Up).Row


End Sub
 
Привет, Тимоти,

Мы просмотрели код и исправили некоторые ошибки в исходном коде, пожалуйста, посмотрите:

Sub Filter_TeamUpdate()
'
' Filter_TeamUpdate Macro
' Timotee
'

lngLastRowANNA = Sheets("ANNA").Cells(Rows.Count, 1).End(xlUp).Row
lngLastRowJULIA = Sheets("JULIA").Cells(Rows.Count, 1).End(xlUp).Row
lngLastRowANDREA = Sheets("ANDREA").Cells(Rows.Count, 1).End(xlUp).Row
lngLastRow = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Rows.Count - 1

Sheets("WEEKLY DISCUSSION").Select

Sheets("ANNA").Range("A1:H" & lngLastRowANNA).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("CRITERIAS").Range("A2:H" & lngLastRowANNA), CopyToRange:=Range("A1") _
, Unique:=False

lngLastRow = Sheets("WEEKLY DISCUSSION").Cells(Rows.Count, 1).End(xlUp).Row


Sheets("JULIA").Range("A1:H" & lngLastRowJULIA).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("CRITERIAS").Range("A2:H" & lngLastRowJULIA), CopyToRange:=Range("A" & lngLastRow + 1) _
, Unique:=False

lngLastRow = Sheets("WEEKLY DISCUSSION").Cells(Rows.Count, 1).End(xlUp).Row

Sheets("ANDREA").Range("A1:H" & lngLastRowANDREA).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("CRITERIAS").Range("A2:H" & lngLastRowANDREA), CopyToRange:=Range("A" & lngLastRow + 1) _
, Unique:=False

lngLastRow = Sheets("WEEKLY DISCUSSION").Cells(Rows.Count, 1).End(xlUp).Row


End Sub


Надеюсь, что это работает для вас.

Аманда
·
2 лет назад
·
0 Любит
·
0 Голосов
·
0 комментариев
·
Посмотреть сообщение полностью