【问题标题】:how to find row number of a value如何查找值的行号
【发布时间】: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


【解决方案1】:

这应该有效: $ExcelWorkSheet.Columns.item(7).find($value1).row

【讨论】:

    猜你喜欢
    • 2014-01-13
    • 2023-02-05
    • 1970-01-01
    • 2014-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多