Издвајање података из затворене датотеке у другу радну свеску уобичајен је захтев већине екцел корисника. Желе да извуку или консолидују податке из затворених датотека; међутим, то није могуће. Постоји решење које помаже у решавању овог проблема. Решење је коришћење макро кода.
Питање: Свакодневно проводим време у копирању података из једне датотеке у другу. Постоје две датотеке „Опен.клс“ и „Цлосед.клс“. Желим да копирам податке из „Цлосед.клс“ у „Опен.клс“ путем ВБА кода.
Кључне ствари које треба знати:
- Прва ствар је да бисмо требали знати „Коришћени опсег“ затворене радне свеске, тј. „Затворени.клс“ унутар отворене радне свеске за нпр. „Опен.клс“
- Можемо користити функцију ИФ у Уседранге -у радне свеске „Цлосед.клс“ у радној свесци „Опен.клс“ и она ће издвојити податке из радне свеске „Цлосед.клс“
- Ако је референтна ћелија празна, ставља се #Н/А. Помоћу методе специалцеллс можете избрисати све грешке #Н/А и променити формулу у вредности
За почетак ћемо сачувати две екцел датотеке 1) Опен.клс 2) Цлосед.клс у путањи „Д: \ Тест Фолдер“
Следи снимак радне свеске „Цлосед.клс“:
Да бисмо аутоматски сачували податке из датотеке „Цлосед.клс“ у датотеку „Опен.клс“, морамо да следимо доње кораке за покретање ВБ уређивача
- Кликните на картицу Девелопер
- Из групе кодова изаберите Висуал Басиц
- Копирајте доњи код у ову радну књигу (Затворено.клс)
Привате Суб Воркбоок_БефореСаве (БиВал СавеАсУИ Као Боолеан, _ Цанцел Ас Боолеан) 'Ставите адресу УседРанге на Схеет1 Цлосед.клс (ова радна свеска)' --- Лист са коментарима2.Целлс (1, 1) = Схеет1.УседРанге.Аддресс Енд Суб
- Да бисте повукли податке у „Опен.клс“, копирајте следећи код у стандардни модул
Под Импортдата () Дим АреаАддресс Ас Стринг Схеет1.УседРанге.Цлеар Схеет1.Целлс (1, 1) = "= 'Д: \ Тест Фолдер \" & "[Цлосед.клс] Схеет2'! РЦ" АреаАддресс = Схеет1.Целлс ( 1, 1) Са Схеет1.Ранге (АреаАддресс) .ФормулаР1Ц1 = "= ИФ ('Д: \ Тест Фолдер \" & "[Цлосед.клс] Схеет1'! РЦ =" "" ", НА (), 'Д: \ Тест Фолдер \ "& _" [Цлосед.клс] Схеет1 '! РЦ) "Он Еррор Ресуме Нект .СпециалЦеллс (клЦеллТипеФормулас, клЕррорс) .Очисти грешку ГоТо 0 .Валуе = .Валуе Енд Витх Енд Суб
- Копирајте следећи код у ову радну књигу (Опен.клс)
Привате Суб Воркбоок_Опен () Покрените „Импортдата“ Енд Суб
Сада су ВБА кодови спремни; све што треба да урадимо је да отворимо назив датотеке „Опен.клс“. Следи снимак датотеке „Опен.клс“:
Код није ограничен на ћелијску копију из А1.уседранге; код ће изабрати почетни опсег и радиће савршено добро. Датотеке су доступне за преузимање и препоручујемо вам да кренете.
Закључак: Помоћу ВБА кода можемо аутоматизовати задатак издвајања података без отварања одредишне радне свеске и штедимо се од ручног копирања и лепљења.
Ако вам се допадају наши блогови, поделите их са пријатељима на Фацебооку. Такође нас можете пратити на Твиттер -у и Фацебоок -у.
Волели бисмо да чујемо од вас, реците нам како можемо побољшати, допунити или иновирати наш рад и учинити га бољим за вас. Пишите нам на веб локацији е -поште