Мое требование - прочитать файл Excel, скопировать его в другое место и преобразовать в формат CSV для дальнейшего использования Azure Фабрика данных - Операция копирования. Проблема в том, что данные в Excel присутствуют в прерывистых ячейках (то есть от A1: V: 1800 и затем до AB1: AQ1800). Я создал ниже сценарий PowerShell, он не читает данные в прерывистых ячейках, но читает весь Excel. Помогите, пожалуйста, в корректировке выбрать только указанный диапазон значений c. Сценарий приведен ниже:
$OriginFile = "\\aaaa\share3\Test\MasterCalendar DASH.xlsx"
$SourceFile = "C:\Users\vermarachna\Documents\Rachna\17.Load
Radiotherapy\25Apr2020\Development\MasterCalendar DASH.xlsx"
$sCSVFile = "C:\Users\vermarachna\Documents\Rachna\17.Load Radiotherapy\25Apr2020\Development\MasterCalendar DASH.csv"
$OrigFileExists = Test-Path $OriginFile
$CSVFileExists = Test-Path $sCSVFile
If ($OrigFileExists -eq $True)
{
# Copy latest excel file to Source Location
Copy-item –path $OriginFile –destination $SourceFile -Force
if ($CSVFileExists -eq $True)
{
Remove-item -path $sCSVFile
}
# Convert excel file to CSV format
# Get COM Object
$Excel = New-Object -ComObject "Excel.Application"
$ExcelWkbook = $Excel.Workbooks.Open($SourceFile)
$ExcelWksheet = $ExcelWkbook.Worksheets.item(1)
$DataColmns = $ExcelWksheet.Range("A1:V1793")
$XLcsv = 6
$DataColmns.worksheet.SaveAs($sCSVFile ,$XLcsv)
$ExcelWkbook.Close($True)
$Excel.Quit()
}
Else
{
Exit
}
Кроме того, прямо сейчас в Excel есть данные до строки № 1800, которые в будущем увеличатся, как я могу сделать номер строки динамическим c в приведенном выше сценарии, чтобы все строки которые имеют данные собраны.