Я импортирую значения (value1, Value2, Value3 и Value4) 4 значения из файла CSV. Затем я открываю файл Excel, у которого уже есть много других параметров. Теперь я пытаюсь найти совпадающее значение value1 в столбце7 и найти номер строки. Затем я заполняю остальные 3 значения до clūmn 12,13 и 14.Как найти номер строки значения
У меня возникла проблема с поиском номера строки.
Правильный ли код ниже?
$ImportedValues = Import-Csv "c:\123.csv"
$ExcelSourceFile = "$env:userprofile\Desktop\fileexcel.xlxs"
$SheetName = "Sheet1"
$ExcelSourceObj = New-Object -ComObject Excel.Application
$ExcelSourceObj.Visible = $true
$ExcelWorkbook = $ExcelSourceObj.Workbooks.Open($ExcelSourceFile, 2, $True)
$ExcelWorkSheet = $ExcelWorkbook.Worksheets.Item($SheetName)
foreach ($ImportedValue in $ImportedValues) {
$value1 = $ImportedValue | select -ExpandProperty Value1
$value2 = $ImportedValue | select -ExpandProperty Value2
$value3 = $ImportedValue | select -ExpandProperty Value3
$value4 = $ImportedValue | select -ExpandProperty Value4
$i = $ExcelWorkSheet.Column(7).find($value1).row
$ExcelWorkSheet.Cells.Item($i,12) = $value2
$ExcelWorkSheet.Cells.Item($i,13) = $value3
$ExcelWorkSheet.Cells.Item($i,14) = $value4
}
_Is ниже кода справа _ .. это получить ли вам результаты, которые вы хотите? Я вижу некоторые сокращения с назначением ваших значений. Что такое '$ value1', например – Matt
' .Column (7) 'должно быть [' .Columns (7) '] (https://msdn.microsoft.com/EN-US/library/office/ff197266.aspx) (множественное число) –
Значение $ может быть именем человека. Я нахожу имя человека в 7-м столбце и пытаюсь найти номер строки и сохранить его в переменной $ i. Так что может быть кодом для получения номера строки? – Chand