Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.04.2010, 12:39   #1
m_v_v
Пользователь
 
Регистрация: 22.09.2009
Сообщений: 31
По умолчанию Скопировать диапазон с одной книги в другую, если совпадают назавание листов

Здравствуйте уважаемые, имеется две книги, нужно скопировать диапазон "E10:G50" с листа одной книги "PLANASIG_.xls" и вставить на то же место такого же листа другой книги "PLANASIG".xls, но копировать ячейки с формулами не нужно, только с данными. Листы которые суммируют другие листы, трогать нельзя
"70000"
"70000 ЦБ-1"
"70000 ЦБ-2"
"70101"
"70201"
"70202"
"70304"
"70401"
"70402"
"70801"
"70802"
"70804"
"70805"
"70806"
"70808"
"70809"

Последний раз редактировалось m_v_v; 02.04.2010 в 13:31.
m_v_v вне форума Ответить с цитированием
Старый 02.04.2010, 12:47   #2
m_v_v
Пользователь
 
Регистрация: 22.09.2009
Сообщений: 31
По умолчанию

Прилагаю файлы
Вложения
Тип файла: rar PLANASIG_.rar (209.5 Кб, 30 просмотров)
Тип файла: rar PLANASIG.rar (202.7 Кб, 17 просмотров)
m_v_v вне форума Ответить с цитированием
Старый 02.04.2010, 14:47   #3
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Вот для листа 70000 для других дальше перепишыте если что спрашывайте
Код:
Private Sub CommandButton1_Click()
For i = 10 To 50
Worksheets("70000").Cells(i, 3) = Workbooks("PLANASIG_").Worksheets("70000").Cells(i, 3)
Worksheets("70000").Cells(i, 4) = Workbooks("PLANASIG_").Worksheets("70000").Cells(i, 4)
Worksheets("70000").Cells(i, 5) = Workbooks("PLANASIG_").Worksheets("70000").Cells(i, 5)
Worksheets("70000").Cells(i, 6) = Workbooks("PLANASIG_").Worksheets("70000").Cells(i, 6)
Worksheets("70000").Cells(i, 7) = Workbooks("PLANASIG_").Worksheets("70000").Cells(i, 7)
Next i
End Sub
Cpluser вне форума Ответить с цитированием
Старый 02.04.2010, 15:00   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

отмечаем копируем в одной книге.
в другой книге правая кнопка по ячейке, специальная вставка, только значения.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 02.04.2010, 15:14   #5
m_v_v
Пользователь
 
Регистрация: 22.09.2009
Сообщений: 31
По умолчанию

Что то не работает, как автоматизировать перебор листов?
m_v_v вне форума Ответить с цитированием
Старый 02.04.2010, 15:19   #6
m_v_v
Пользователь
 
Регистрация: 22.09.2009
Сообщений: 31
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
отмечаем копируем в одной книге.
в другой книге правая кнопка по ячейке, специальная вставка, только значения.
В принципе так и делал, но хотелось бы автоматизировать процесс, потому что там лист не один и не два, много времени уходит, да и подобный макрос можно потом еще использовать, у меня таких книг еще парочка. Но если такое невозможно то так и быть.
m_v_v вне форума Ответить с цитированием
Старый 02.04.2010, 22:22   #7
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Проверил.Все работает

Макрос в файле ,который обновляется PLANASIG.xls
Код:

Const path As String = "C:\" ' Путь к папке с файлом
Const File As String = "PLANASIG_.xls" 'Имя файла
Sub UPDATE()
Dim name As String
Dim n AS Integer
For n = 1 To ThisWorkbook.Worksheets.Count
name = ThisWorkbook.Worksheets(n).name

Select Case name
Case "70000", "70000 ЦБ-1", "70000 ЦБ-2", "70101", _
"70201", "70202", "70304", "70401", "70402", "70801", _
"70802", "70804", "70805", "70806", "70808", "70809"

Case Else
      Sheets(name).Range("E10:G50").Formula = "='" & path & "[" & File & "]" & name & "'!" & "E10"
Range("E10:G50") = Range("E10:G50").Value

End Select
Next
End Sub
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 02.04.2010 в 22:24.
doober вне форума Ответить с цитированием
Старый 06.04.2010, 13:15   #8
m_v_v
Пользователь
 
Регистрация: 22.09.2009
Сообщений: 31
По умолчанию

Уважаемый, doober, огромное спасибо, все работает.
m_v_v вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как скопировать данные таблицы из одной базы access в другую? AK BULLETS БД в Delphi 2 31.03.2010 13:09
Автоматическое заполнение ячеек разных листов одной книги tissot Microsoft Office Excel 2 26.01.2010 21:24
Сложное копирование из одной книги в другую kzld Microsoft Office Excel 12 15.07.2009 11:56
Копировние листов из одной книги в другую Jenik Microsoft Office Excel 4 04.03.2009 12:22
Перенос данных из одной книги со многих листов в другую gavrylyuk Microsoft Office Excel 34 20.07.2008 21:39