Powershell:将粗体文本保存到变量中

3

我想请你帮忙,如何通过PowerShell从Excel中保存加粗文本到变量中。我不是全职开发人员,只是试图使用PowerShell让生活更轻松 :)

这是我目前拥有的代码(可惜不多):

# Open file test.xlsx
$excel = Open-ExcelPackage -Path './test.xlsx'

# Copy content of the worsksheet 'Sheet1'
$worksheet = $excel.Workbook.Worksheets['Sheet1']

# Copy specific cell value to the variable    
$String = $worksheet.Value
$StringBold = 

# Close Excel file
Close-ExcelPackage -ExcelPackage $Excel

我可以将test.xlsx文件的内容保存到变量&worksheet中。某些单元格可能包含字符串'How are you today Marek?',所以下一步应该将Marek这个词只保存到变量$StringBold中。

非常感谢任何建议。


是的,没错,我只需要提取粗体文本,不需要其他内容。请问您知道还有什么其他方法可以实现吗? - Marek Sanoba
1个回答

1

经过一些研究,使用 ImportExcel 模块 似乎是可行的,您只需要枚举每个单元格,然后访问它们的.RichText 属性。这里有一个实现它的例子:

$xlsx  = Open-ExcelPackage path\to\my.xlsx
$sheet = $xlsx.Workbook.Worksheets['mySheetName']
foreach($cell in $sheet.Cells) {
    foreach($richText in $cell.RichText) {
        if($richText.Bold) {
            [pscustomobject]@{
                Address = $cell.Address
                Value   = $richText.Text
            }
        }
    }
}

以此表格为例: test 使用此代码的结果如下:
Address Value
------- -----
A2      Marek
A3      Hello

这看起来不错@Santiago Squarzon。然而,我该如何将粗体值保存到变量中呢?我试过了,但没有成功:(。主要目标是在xlsx中识别粗体字符串,用HTML代码包装它,并保存/关闭xlsx。例如,Marek将被替换为_<span style =“font-weight:bold;”> Marek </ span>_。 - Marek Sanoba
@MarekSanoba 那应该是一个不同的问题。这个答案旨在回答最初的问题。 - Santiago Squarzon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接