【发布时间】:2015-12-08 19:47:44
【问题描述】:
我正在从 CSV 文件中导入值(value1、Value2、Value3 和 Value4)4 个值。然后我打开已经填充了许多其他参数的 Excel 文件。现在我试图在 column7 中找到 value1 的匹配值并找到行号。然后我将其他 3 个值填充到 cloumn 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
}
【问题讨论】:
-
下面的代码对吗?..它能给你带来你想要的结果吗?我看到分配你的值有一些冗余。例如
$value1是什么 -
.Column(7)应该是.Columns(7)(复数) -
$value 可以是人名。我在第 7 列中找到人名并试图找到行号并将其保存在 $i 变量中。那么获取行号的代码是什么?
标签: excel powershell