2014-10-22 2 views
0

Я погружался в то, как Powershell может использовать Excel в качестве COM-объекта, иметь большую часть его, но есть две вещи, которые я хотел бы сделать, чтобы я сделал это найти где-нибудь, надеясь, что кто-то может помочь.Powershell: сокрытие столбцов и граничащих ячеек в Excel

1/хотел бы иметь возможность сценария скрывать диапазон столбцов в сгенерированной электронной таблице Excel.

2/Желательно иметь Excel, чтобы добавить границу вокруг всех ячеек в скрипте.

Спасибо!

+0

Пожалуйста, добавьте код? Или используйте VBA! – Hiten004

+0

У меня нет кода для них, вот в чем смысл. Я ищу кого-то, кто может это понять. Я могу опубликовать другой код, который я использую в своем скрипте для Excel, если это поможет. – n00b

ответ

3

Скрытие колонки:

Вот пример, который вы можете адаптировать. Это скрывает первый столбец в активной рабочей таблице.

$file = "C:\Users\Micky\Desktop\not locked.xlsx" 

[Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Interop.Excel")|Out-Null 
$excel = New-Object Microsoft.Office.Interop.Excel.ApplicationClass 
$excel.Visible = $true 
$wb = $excel.Workbooks.Open($file) 
$ws = $wb.ActiveSheet 
$c = $ws.Columns 
$c.Item(1).hidden = $true 

Cell граница: Для примера я использую двойную рамку и применить к первой ячейке, А1.

XlLineStyle Enum можно найти here

$xlDouble = -4119 
$item = $ws.Range("A1") 
$item.Borders.LineStyle = $xlDouble 
+0

Большое спасибо! Это определенно дает мне кое-что для работы. Очень признателен! – n00b