Модераторы: mihanik

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Макросы для Exel 
:(
    Опции темы
Tsinarski
Дата 10.6.2007, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



кто небудь может помочь со скриптом макроса ?
мне надо чтоб автоматический с одного Exel файла информация копировалась в другую
если не затруднит пожалусто ответте 

PM MAIL   Вверх
RockClimber
Дата 11.6.2007, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: 7
Всего: 15



Насколько автоматически? Если по одной простой команде пользователя (например, нажите кнопки), то просто:
Код

Workbooks("Книга1").Sheets("Лист1").Range("A1:D10").Copy Destination:=Workbooks("Книга2").Sheets("Лист2").Range("E1:H10")

Если совсем автоматически, то объясни, в какой момент должно происходить копирование...


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
mihanik
Дата 13.6.2007, 07:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 9
Всего: 109



Модератор: 
Tsinarski, не надо плодить темы!!!
Если вдруг случилось так, что создал тему не там, то обратись к модерам или комодерам...
 smile 


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Tsinarski
Дата 13.6.2007, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



Мне нужно сделать маленкий макрос который будет с нескольких файлов Exel копировать данные в один, 
то-есть у меня проблемма такая много Exel файлов у которых по 2 листа преходется соберать всё в один Exel фаил с помощью копирования (мне это приходется делть часто, exel фаилы вынемаются из базы данных автоматический "ведётся статистика" у етих файлов постоянно одинаковые имена "у всех разные")
мне хочется найти путь патом я сам создаду такой документ (нужен скрипт который будет копировать информацию с одного Exel файла в другой) если можите помогите плиз ато у меня очень много времени занемает копирование (в vb немного я тоже баловатся умею но я не програмист и не смог до токого скрипта додуматся)

Добавлено через 9 минут и 26 секунд
ребята плиз не удоляйте тему мне уже ктото решил помочь дайте моей теме реализоватся ведь людям exelочень часто нужен и многие интересуются с темами макросав
PM MAIL   Вверх
RockClimber
Дата 13.6.2007, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: 7
Всего: 15



У меня дома экселя нет, а на память я не помню. Делай так: в меню "сервис" находишь режим записи макроса, включаешь запись, потом кликаешь правой кнопкой на названии листа, выбираешь "Копировать/переместить", выбираешь книгу экселя, жмешь "ОК", потом останавливаешь запись макроса и смотришь, что он поназаписал. Потом делаешь так:
Код

Sub CopySheets()

Dim i as Long
Dim j as Long

for i =1 to Workbooks.Count
    if Workbooks(i).Name <> "Отчет" Then
        Workbooks(i).Activate
        for j=1 to Sheets.Count  
          ' сюда вставляешь функцию копирования листов из текущей книги в книгу "Отчет"

        Next j
    End If
Next i

End Sub


Эта незатейливая функция скопирует все листы из всех книг в книгу "Отчет". Если будут вопросы - пиши сюда.

P. S. И пиши грамотно, а то сообщения в почти "падонак-стайл" тяжело читаются и не всегда понятно, чего человек вообще хочет...

Это сообщение отредактировал(а) RockClimber - 13.6.2007, 23:37


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
Tsinarski
Дата 14.6.2007, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



ребята спасибо за то что помогаите

скрипт который преслали он работаен но есть проблемма, после того как я сохраняю фаил он перестоёт работать
Workbooks("Книга1").Sheets("Лист1").Range("A1:D10").Copy Destination:=Workbooks("Книга2").Sheets("Лист2").Range("E1:H10")

PM MAIL   Вверх
RockClimber
Дата 14.6.2007, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: 7
Всего: 15



А подробнее? С каким именем сохраняешь? После сохранения закрываешь? Если хотя бы один ответ будет "да", то так и должно быть...


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
Tsinarski
Дата 15.6.2007, 08:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



И так  
Workbooks("Книга1").Sheets("Лист1").Range("A1:D10").Copy Destination:=Workbooks("Книга2").Sheets("Лист2").Range("E1:H10")

тут ясно видны имена фаилов, то-есть по умолчанию Книга1, Книга2 вот я  сохраняю эти фаилы по умолчанию с этими же именами, просто программа перестаёт работать после сохронения, не понятно в чём дело до сохронение всё работает как по маслу.

Стрнно всё это выглядет, я даже подумал а вдруг до сохронение всё работает в буфере а после сохронение программа наченает требовать конкретные маршруты етих файлов типо C:\Documents and Settings\dnanobashvili\Desktop\1, но если да, то как указывать и куда встовлять путь маршрута?
PM MAIL   Вверх
dionisiu
Дата 16.6.2007, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 13.5.2006
Где: Крым

Репутация: 1
Всего: 2



Стоп.
Цитата(Tsinarski @  14.6.2007,  12:27 Найти цитируемый пост)
скрипт который преслали он работаен но есть проблемма, после того как я сохраняю фаил он перестоёт работать
Workbooks("Книга1").Sheets("Лист1").Range("A1:D10").Copy Destination:=Workbooks("Книга2").Sheets("Лист2").Range("E1:H10")

тут может быть такая фишка: в "Книга1" в указаном диапазоне могут быть ссылки на лист2, например, или ссылки за пределы диапазона. Тогда эксель при переносе в новую книгу пропишет (перепишет) ссылки из Книга2 на Книга1, и открыв книгу2 будет требовать обновления ссылок.

Вас не затруднит взять пару книг с исходными данными, а также книгу, куда это вставлять, удалить из них персональную информацию (типа имена, названия, адреса) - оставить только цифры и заменяющие персональные данные спецслова (Вместо клиентов Иванов, Петров, Сидоров вставить Клиент1, Клиент2, Клиент3, вместо названий товаров типа "Печенье топлёное", "Консерва Тунец", "Водка Крепкая" ввести Товар1, Товар2, Товар3 и так далее...) и выложить на форум в архиве (тут можно до 120к за-раз приложить) с инструкцией: что, из какой книги, с какого листа, при каких условиях и в какую ячейку отчёта вставлять.

по поводу имён файлов исходников: я так понимаю, что есть набор файлов (Прайс1, Список2, Маршрут3...), который генерируется в Акцесе, но каждый из этих файлов всегда сохраняется именно с таким именем, и не зависит от прочих условий (типа Прайс2007_06_16 сегодня, а завтра Прайс2007_06_16). Если имена файлов и места их "хранения" стабильны, то можно и вовсе обойтись без макросов, через функции СУММЕСЛИ() - у меня такое работает на нескольких отчётах (в прайс загоняются остатки из 1С, в отчёт для центрального офиса - данные о продажах, при этом никаких макросов, уже два года работает)



RockClimber, 

Цитата(RockClimber @  13.6.2007,  23:35 Найти цитируемый пост)
P. S. И пиши грамотно, а то сообщения в почти "падонак-стайл" тяжело читаются и не всегда понятно, чего человек вообще хочет...


просто для автора русский язык, видимо, не является родным. Кстати, от "падонкаф" автор выгодно отличается отсутствием грубости
Цитата(Tsinarski @  15.6.2007,  08:43 Найти цитируемый пост)
dnanobashvili


PM MAIL ICQ   Вверх
Tsinarski
Дата 16.6.2007, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



Это фаил автоматического получения из базы
у него 2 листа
мне приходится сначало копировать 1 лист встовлять в фаил в другой фаил обшая статистика патом второй лист и опять встовлять чтоб вся информация собералась в одном фаиле, таких фаилов несколько сотен согласитесть очень трудоёмкая работа и эта ерунда отнемает уймо времени просто на работе требуют чтоб именно так и делалась обшая статистика (работаю я в сотовой компание которая в процесе стройки, виду мониторинг базавых станции и вконце недели преходится проверять нагрузки на секторы). Живу в Грузие меня Гиоргий зовут спасибо за поддержку ребята!

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  statistika.rar 9,51 Kb
PM MAIL   Вверх
Tsinarski
Дата 16.6.2007, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



1 копирую из получаемого файла

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  1.jpg 81,65 Kb
PM MAIL   Вверх
Tsinarski
Дата 16.6.2007, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



2 встовляю в фаил обшая статистика

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  2.jpg 95,81 Kb
PM MAIL   Вверх
Tsinarski
Дата 16.6.2007, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



3 опять копирую с принятого файла диаграму уже со второго листа и втовляю в обшуб статистику

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  3.jpg 86,88 Kb
PM MAIL   Вверх
dionisiu
Дата 19.6.2007, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 13.5.2006
Где: Крым

Репутация: 1
Всего: 2



Как я и говорил - копирование в новую книгу загоняет связи, а не данные. Причём связи тянутся не по формулам, а за диаграммами.
Два варианта: Или рисовать диаграмму макросом и тянуть только листы с данными, или в статистике единожды нарисовать диаграмму, привязав её к некой таблице, где прописать ссылки на соответствуюшие файлы (можно и через кнопку, куда повесить последовательное открытие нужных файлов, выборку числовых данных с первого листа и закрытие исходников).


Из Вашего описания последовательности работ и файлов исходных данных следует примерно следующее:
1. Есть некая база на акцессе, которая каким-то образом собирает данные, при этом способна генерировать файлы с таблицей и диаграмой, причём имя файла стабильно, однако, одной точке снятия данных соответствует несколько файлов, которые нужно различать по ключевому слову seqtor и номеру за ним
(парадокс - а зачем делать внешний обработчик, если можно сделать в самом акцессе лишнюю кнопку по выводу общей статистики?)

2. Сгенерированные файлы лежат в некоторой стабильно определённой папке (видимо, в документах текущего пользователя) (судя по приведённому пути)
3. За неделю файлов собирается очень много. Тут не понятно: вроде в файле перечислены дни недели, в выложенном примере даны файлы одной точки по трём секторам (насколько мне хватает познаний в сотовой связи - секторов должно быть 4), а в статитстике сбор по 4-м точкам (или это урезанная версия для примера?)
4. Данные из файла точки, сектора1 нужно расположить вверху соответствующего листа статистики, из сектора 2 - немного ниже, из сектора 3 - ещё ниже и так далее..., при этом формат диаграммы остаётся тем же.

я правильно понял Вашу задачу?
PM MAIL ICQ   Вверх
Tsinarski
Дата 20.6.2007, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 10.6.2007

Репутация: нет
Всего: нет



dionisiu, не обязательно 4 сектора  обычно ставят 3 сектора на каждой базавой станцые но это не стандарт иногда устонавливают 2 или 4 в зависимости от вероятной нагрузки на базавую станцию в радиусе его деяствия, эти фаилы не берутся с ексел там стоит специальная программа  солярис которая постовляется с апаратурог алкател, она при запросе выдают данные нагрузки заданого интервала времени на секторы с именами бызовых стании где устоновлен сектор к примеру bumajnajafabrika-sector1.xls, bumajnajafabrika-sector2.xls в ексел фаилах для каждого сектора 1 фаил (ну то что я преслал это был пример я там вручную эти фаилы сделал наверно неправильно) просто для меня главное соорудить скрипт для ексал для сбора всех етих фаилов в 1 ексел фаил, понемаю наверно это какимто мазохизмом кажетсяsmile если честно мне тожеsmile но начальство требует чтоб было всё собраноо  
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0543 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.