VBS/WSH/JS - Копирование строк из одного файла в другой (excel)

Ответить
Аватара пользователя
maxim43g

VBS/WSH/JS - Копирование строк из одного файла в другой (excel)

Сообщение maxim43g »

Добрый день.

Нашёл на просторах интернета такой прекрасный скрипт


Цитата:



Option Explicit

Dim objApp, objWbs, objWorkbook1, objWorkbook2, objSheet1, objSheet2



Set objApp = CreateObject("Excel.Application")

Set objWbs = objApp.WorkBooks

objApp.Visible = False ' Невидимый

objApp.DisplayAlerts = False ' Не спрашивать глупости

Set objWorkbook1 = objWbs.Open("C:\1\Template.xls") ' Открываем шаблон (В нём первая строка, с картинкой)

Set objWorkbook2 = objWbs.Open("C:\1\Data.xls") ' Открываем данные

Set objSheet1 = objWorkbook1.Sheets(1) ' Первый лист

Set objSheet2 = objWorkbook2.Sheets(1) ' Первый лист



' Копируем все заполненные ячейки из файла с данными, в шаблон, начиная со второй строки

objSheet2.UsedRange.Copy(objSheet1.Rows(2))

' Или копируем первую строку из шаблона, в книгу с данными, заменяя имеющуюся

' objSheet1.Rows(1).Copy(objSheet2.Rows(1))



' Сохраняем изменённый шаблон под другим именем.

objWorkbook1.SaveAs("C:\1\Result.xls")

' Или сохраняем изменённую книгу с данными под тем же именем.

' objWorkbook2.Save



objWbs.Close





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

Пример скопировать столбец А файла "1", в столбец В файла "2"
Аватара пользователя
DJ Mogarych

Re: VBS/WSH/JS - Копирование строк из одного файла в другой (excel)

Сообщение DJ Mogarych »

Изучите возможности модуля
ImportExcel
в Powershell, тогда не нужно будет геморроиться с COM-объектами.
Аватара пользователя
maxim43g

Re: VBS/WSH/JS - Копирование строк из одного файла в другой (excel)

Сообщение maxim43g »

я в этом не особо понимаю.

может хотя бы поможете изменить строку objSheet2.UsedRange.Copy(objSheet1.Rows(2)) так, что если бы в objSheet1 есть данные он их не стирал и записывал новые, а копировал их после строк с данными
Аватара пользователя
maxim43g

Re: VBS/WSH/JS - Копирование строк из одного файла в другой (excel)

Сообщение maxim43g »

Цитата maxim43g:



Пример скопировать столбец А файла "1", в столбец В файла "2"
VBS/WSH/JS - Копирование строк из одного файла в другой (excel)






Код:

Код: Выделить всё

objSheet1.Columns(1).Copy(objSheet2.Columns(2))

Не проверялось.




Цитата maxim43g:



может хотя бы поможете изменить строку objSheet2.UsedRange.Copy(objSheet1.Rows(2)) так, что если бы в objSheet1 есть данные он их не стирал и записывал новые, а копировал их после строк с данными
VBS/WSH/JS - Копирование строк из одного файла в другой (excel)




А вот это будет напрямую зависеть от содержимого Ваших Sheet1 и Sheet2.



Но вообще, если Вы пытаетесь изобразить из Microsoft Excel базу данных — бросьте, дурная затея.
Аватара пользователя
maxim43g

Re: VBS/WSH/JS - Копирование строк из одного файла в другой (excel)

Сообщение maxim43g »

Цитата Iska:



А вот это будет напрямую зависеть от содержимого Ваших Sheet1 и Sheet2.
VBS/WSH/JS - Копирование строк из одного файла в другой (excel)




что вы имеете ввиду?

Копирование из столбца A в столбец A, из В в В, и т.д.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»