Екцел - Макро за копирање редова и колона

Питање

Радим на Мацро-у да копирам из једне радне свеске (лист) и налепите на другу радну свеску (лист)

Оффице 2007 и Виндовс КСП

У првој радној књизи имам све податке који се односе на рекс. се филтрира. Како рећи у макроу да копира 'резултат' записе? Ови записи резултата се увек мењају.

Снимам макро помоћу ових корака:

  • 1. опен оутпут.клск (циљна радна књига)
  • 2. цтрл + А (да бисте изабрали све податке који већ постоје) и обришите (све)
  • 3. изворна радна књига (инпут.клсм) копира резултате записа
  • 4. Залијепите специјално у циљну радну књигу
  • 5. Изведите радну књигу и зауставите снимање макроа

Остатак макроа ради добро, проблем је у томе како поставити опсег записа резултата који можете рећи је динамичан.

Испод је макро, али његов аутоматски генерисан код:

 Суб Мацро1 () '' Мацро21 Мацро '' Воркбоок.Опен Филенаме: = _ "О: датаордеррефЛист-оутпут.клтк" _, Едитабле: = Труе Селецтион.ЦуррентРегион.Селецт Селецтион.Цлеар Ранге ("А1"). Ацтивате Селецтион.ЦуррентРегион.Селецт Селецтион.Цопи Виндовс ("рефЛист-оутпут.клтк") Активирај Селецтион.ПастеСпециал Пасте: = клПастеЦолумнВидтхс, Оператион: = клНоне, _ СкипБланкс: = Фалсе, Транспосе: = Фалсе Селецтион.ПастеСпециал Пасте: = клПастеФорматс, Оператион: = клНоне, _ СкипБланкс: = Фалсе, Транспосе: = Фалсе Селецтион. Изаберите Апплицатион.ЦутЦопиМоде = Фалсе АцтивеВоркбоок.Саве Виндовс ("РеференцеЛист.клсм") Активирајте Ранге ("Табле_Куери_фром_МС_Аццесс_Датабасе [#Хеадерс, [Ордер Но]]"). 

Ради добро, али морам да направим селекцију на основу записа резултата и другог форматирања.

Решење

Пробали су мој приједлог. када МЕРЕЛИ одаберете филтриране селекције података укључује и скривене ћелије (скривене због филтрирања), умјесто тога морате користити својство "специалцеллс" као што сам предложио. можете да мењате на тој основи.

Ту је и одредба БЕЗ активирања различитих прозора или избора различитих опсега.

Дао сам алтернативу за посебан део вашег макроа

 ТхисВоркбоок.Ворксхеетс ("схеет1") КористиРанге.СпециалЦеллс (клЦеллТипеВисибле) .Цопи Воркбоокс ("боок4"). Радни листови ("схеет1"). Ранге ("А1"). : = клПастеФорматс _, Залијепи: = клПастеЦолумнВидтхс 

Ако су две књиге сачуване књиге, треба да користите "боок4.клс" или "боок4.клсм" "" ова радна свеска значи модул радне свеске где је макро паркиран, можете ли покушати да модификујете макро.

Белешка

Хвала венкат1926 за овај тип на форуму.

Претходни Чланак Sledeći Чланак

Топ Савети