Екцел - Макро за реорганизацију ћелија

  • Питање
  • Решење

Питање

Треба ми твоја помоћ да решим следећи проблем.

  • Имам неколико датотека које садрже податке о више од 50.000 записа. Неки документују податке о колонама, а не према насловима. Сваки фајл који садржи хиљаде записа који захтевају подешавање колона у складу са насловима. Покушао сам га макро снимањем али његов рад само на реду # који је снимљен у макроу. Дакле, то је бескорисно за мене.
  • Потребан ми је макро који ради само у реду ако је у колони К или Р или С или Т или У (било која од њих садржи податке, користи 'или' увјет) који садржи податке или нумеричке или текстуалне. Ако овај услов постане истинит онда макро следи:

 Датум у колони 'Е' исећи и залијепити у ступац 'Ф' Датум у ступцу 'Ј' изрезати и залијепити у ступац 'Х' Датум у ступцу 'Л' изрезати и залијепити у ступац 'Ј', затим копирати 'Ј' и залијепити на 'Г' Датум у колони 'М' изрезати и залијепити у ступац 'В' Датум у ступцу 'Н' изрезати и залијепити у ступац 'Кс' Датум у ступцу 'О' изрезати и залијепити у ступац 'К' Датум у ступцу ' П 'изрезати и залијепити у колони' Л 'Датум у ступцу' К 'изрезати и залијепити у колони' О 'Датум у ступцу' Р 'изрезати и залијепити у колони' Н 'Датум у ступцу' У 'изрезати и залијепити на колони' П ' 
  • Овај макро треба да почне да ради од сировог # 5 и завршава тамо где се записи завршавају.
  • Бићу вам веома захвалан на овој помоћи.

Решење

Испробајте овај код:

 Суб тест () Дим лРов Ас Интегер 'Промените К у писмо колоне са подацима у последњем реду. лРов = Распон ("К" & Ровс.Цоунт). Енд (клУп) .Ров За сваку ћелију у опсегу ("К5: К" & лРов) Ако је целл.Валуе "" _ ор целл.Оффсет (0, 1). Валуе "" _ ор целл.Оффсет (0, 2) .Валуе "" _ Или целл.Оффсет (0, 3) .Валуе "" _ ор целл.Оффсет (0, 4) .Валуе "" Затим целл.Оффсет ( 0, -12) .Цут Дестинатион: = целл.Оффсет (0, -11) целл.Оффсет (0, -7) .Цут Дестинатион: = целл.Оффсет (0, -9) целл.Оффсет (0, -5) ) .Цут Дестинатион: = целл.Оффсет (0, -7) целл.Оффсет (0, -7) .Цопи Дестинатион: = целл.Оффсет (0, -10) целл.Оффсет (0, -4) .Цут Дестинатион : = целл.Оффсет (0, 6) целл.Оффсет (0, -3) .Цут Дестинатион: = целл.Оффсет (0, 7) целл.Оффсет (0, -2) .Цут Дестинатион: = целл.Оффсет ( 0, -6) целл.Оффсет (0, -1) .Цут Дестинатион: = целл.Оффсет (0, -5) целл.Цопи Дестинатион: = целл.Оффсет (0, -2) целл.Оффсет (0, 1) ) .Цут Дестинатион: = целл.Оффсет (0, -3) целл.Оффсет (0, 4) .Цут Дестинатион: = целл.Оффсет (0, -1) целл.ЦлеарЦонтентс Енд Иф Нект Енд Суб 

Хвала ТроваД-у на овом савету.

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

Топ Савети