Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Скрипт, который изменяет значение ячейки в Exсel

Ответить
Настройки темы
CMD/BAT - [решено] Скрипт, который изменяет значение ячейки в Exсel

Пользователь


Сообщения: 72
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день. К нам поступают файлы с другой организации такие файлы например как 34S_1 - 999999_05.03.2018_28.xls 34S_400000 - 400138_05.03.2018_1.xls 34S_400139 - 404622_05.03.2018_25.xls . Этих файлов разное количество, бывает и 40 файлов бывает и 50 и т д.
Так выглядит структура xls файла:
num indexto region area city adres adresat mass value payment comment
4000 404131 ВОЛ ВОЛЖСКИЙ ул. МИРА, д. 61, кв. 45 Иванов Иван 0.02 0 0
Можно ли создать скрипт который изменяет ячейку adres на street? То есть переименовывает ячейку F1 на street

Отправлено: 14:02, 21-03-2018

 

Пользователь


Сообщения: 72
Благодарности: 0

Профиль | Отправить PM | Цитировать


то есть структура файлов, которые к нам пришли одинакова, чтобы во всех этих excel файлов изменялась ячейка F1? Какой то фильтр создать чтобы скрипт изменял только в xls

Отправлено: 14:04, 21-03-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Пользователь


Сообщения: 72
Благодарности: 0

Профиль | Отправить PM | Цитировать


Что то удалось сделать но не CMD а VBS. Но открыть я могу лишь один файл, как открыть сразу все файлы xls?
Код: Выделить весь код
Dim oXL

Set oXL = WScript.CreateObject("Excel.Application")

oXL.Visible = false            'скрыть Excel 

oXL.WorkBooks.Open("D:\IVC\Operators\Printer\1.xls") 'добавить существующую книгу - описание колонок  

' ищем первую не заполненную строку 
' левая верхняя ячейка имеет координаты 1,1 в MS Office и 0,0 в Open Office
Row = 1                                           ' с какой строки начинаем поиск
Col = 1                                            ' какую колонку проверять

a = oXL.Cells(Row, 1).Value                 ' читать значение ячейки 1 в строке Row

oXL.Cells(Row, 6).Value = "street"           ' записать строковые данные в ячейку 2 в строке Row

oXL.Visible = true                              ' показать Excel 

oXL.WorkBooks.Close

Отправлено: 15:53, 21-03-2018 | #3


Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


Если надо, чтобы во всех XLS-файлах в указанной папке в указанной ячейке было записано указанное содержимое, вот vbs-скрипт
Код: Выделить весь код
ExtIn = "xls"               'Расширение Excel-файла
RangeIn = "F1"              'Адрес клетки
TxtIn = "street"

BoxIn = "Z:\Box_In"         ' Папка с Excel-файлами

Set FSO = CreateObject("Scripting.FileSystemObject")
Set WShell = CreateObject("WScript.Shell")

On Error Resume Next
Set InBox = FSO.GetFolder(BoxIn)

If Err.Number <> 0 Then
    LL = WShell.Popup("Папка" + vbCrLf + vbCrLf + BoxIn + vbCrLf + vbCrLf + "Код ошибки " + CStr(Err.Number) + vbCrLf + Err.Description, 0, "Открытие папки", 16)
    On Error GoTo 0
Else

    Set XL = CreateObject("Excel.Application")
'   XL.Visible = True
    XL.Visible = False

    On Error GoTo 0
    Set AllFiles = InBox.Files

    For Each File In AllFiles
        XlsName = BoxIn + "\" + File.Name
        If LCase(FSO.GetExtensionName(XlsName)) = LCase(ExtIn) Then

            Set XLbook = XL.Workbooks.Open(XlsName)
            XL.Range(RangeIn) = TxtIn
            XLbook.Save
            XLbook.Close
        End If
    Next

    XL.Quit
End If
Файлы открываются поочереди

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 22-03-2018 в 10:37.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:02, 21-03-2018 | #4


Пользователь


Сообщения: 72
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо, то что нужно

Отправлено: 16:23, 21-03-2018 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Скрипт, который изменяет значение ячейки в Exсel

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2013 - [решено] Нумерация ячейки в зависимости от другой ячейки subuday77 Microsoft Office (Word, Excel, Outlook и т.д.) 5 19-02-2018 16:56
CMD/BAT - [решено] скрипт, который берет значение из реестра и применяет его как ссылку на файл vlad_exe@vk Скриптовые языки администрирования Windows 4 08-05-2012 12:10
[решено] Получить значение ячейки из таблицы HTML Lodoss AutoIt 2 30-12-2009 07:15
Графика - [решено] Софт, который изменяет размер выделенных изображений? Rumeus Цифровое изображение 31 15-07-2009 11:35
Скрипт который может сам себя обновить BuilderMan Вебмастеру 8 30-09-2006 13:44




 
Переход