Powershell и .xlsx как использовать =ПРАВИЛЬНО()

#excel #powershell

Вопрос:

У меня есть файл .xlsx, в котором мне нужно исправить несколько столбцов, чтобы использовать правильное форматирование. Я безуспешно пытался использовать =Правильный(), =Нижний() и даже =Верхний() с помощью Powershell.

Кто-нибудь случайно не знает, как это сделать? Спасибо

 $worksheet = C:UsersUSERNAMEDownloadsBook1.xlsx
Import-Module PSExcel 

$worksheet.Columns("Name, 'Primary Worksite', 'Primary Job Title'").ToProper()
 

Ответ №1:

Вот пример использования COM — ключ вызывает соответствующую функцию с помощью класса WorksheetFunctions, который предоставляет программный доступ ко всем функциям, встроенным в Excel.

Другие библиотеки и модули могут предоставить вам обертки для этого…

 # setup - create a new workbook with "aaa bbb ccc" in cell A1
$excel = new-object -ComObject Excel.Application;
$excel.Visible = $true;
$workbook = $excel.Workbooks.Add();
$workbook.Sheets(1).Range("A1").Value = "aaa bbb ccc";

# get the text from a range
$range = $workbook.Sheets(1).Range("A1");
$originalText = $range.Text;

# convert it to "Proper Case"
# (see https://docs.microsoft.com/en-us/office/vba/api/excel.worksheetfunction.proper)
$properText   = $excel.WorksheetFunction.Proper($originalText);

# set the new text back into the cell
$range.Value  = $properText; # Aaa Bbb Ccc

# clean up
$workbook.Close($false);
$excel.Quit();