Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Powershell and Excel / 2 сообщений из 2, страница 1 из 1
22.08.2017, 09:37
    #39508649
SAS2014
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Powershell and Excel
А по какой причине скрипт на PS не может добавить данные в книгу Excel 2007?
А в Excel 2010, 2013, 2016 данные добавляются

пример вырезки из скрипта:

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
# ИНФОРМАЦИЯ О КОМПЬЮТЕРАХ
# СПИСОК КОМПЬЮТЕРОВ В ФАЙЛЕ servers.txt 
  (создается заранее)
# КОТОРЫЙ ФОРМИРУЕТСЯ В EXCEL ФАЙЛ
##########################################

cls
# Создаём объект Excel
$Excel = New-Object -ComObject Excel.Application

# Делаем его видимым
$Excel.Visible = $true

# Добавляем рабочую книгу
$WorkBook = $Excel.Workbooks.Add()

# Начинаем работать с первым листом. 
#Для простоты  обращения к нему создаём соответствующую переменную
$info_comp = $WorkBook.Worksheets.Item(1)

# Переименовываем лист
$info_comp.Name = 'The information on computers'

# Заполняем ячейки - шапку таблицы
$info_comp.Cells.Item(1,1) = '[Computer]'
$info_comp.Cells.Item(1,2) = '[Operation System]'
$info_comp.Cells.Item(1,3) = '[SP]'
$info_comp.Cells.Item(1,4) = '[Architecture]'
$info_comp.Cells.Item(1,5) = '[Motherboard]'
$info_comp.Cells.Item(1,6) = '[Processor]'
$info_comp.Cells.Item(1,7) = '[RAM(GB)]'
$info_comp.Cells.Item(1,8) = '[Graphic adapter]'
$info_comp.Cells.Item(1,9) = '[Disk]'
$info_comp.Cells.Item(1,10) = '[Free(GB)]'
$info_comp.Cells.Item(1,11) = '[Total(GB)]'


# Переходим на следующую строку...
$Row = 2
$Column = 1



ПРОПУЩЕН КОД СКРИПТА СБОР ИНФЫ, ПРОЦ, ОПЕРАТИВКА И ПРОЧЕЕ


Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
###########################################################################
# Номер начальной строки
$InitialRow = $Row
# Возвращаемся на одну строку назад
#$Row--

$DataRange = $info_comp.Range(("A{0}" -f $InitialRow), ("K{0}" -f $Row))
7..12 | ForEach-Object `
{
    $DataRange.Borders.Item($_).LineStyle = 1
    $DataRange.Borders.Item($_).Weight = 2
}

$Row++
#############################################################################
}
##############    
$Column = 1
##############
}

} #end

# Выделяем жирным шапку таблицы
$info_comp.Rows.Item(1).Font.Bold = $true
$info_comp.Rows.Item(1).Font.Size = 12
$info_comp.Rows.Item(1).Font.Color = 8210719

# Переменная $UsedRange содержит все занятые ячейки (эквивалентно однократному нажатию Ctrl+A)
$UsedRange = $info_comp.UsedRange
$UsedRange.EntireColumn.AutoFit() | Out-Null

 
...
Рейтинг: 0 / 0
24.08.2017, 01:49
    #39509653
скукотища
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Powershell and Excel
SAS2014,
попробуй заменить
Код: powershell
1.
7..12 | ForEach-Object

на
Код: powershell
1.
7..11 | ForEach-Object
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Powershell and Excel / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]