如何从Excel中打开一个csv文件,并突出显示一行?

我有一个很大的CSV文件,我想以编程方式在Excel中打开一个突出显示的特定行(我知道行号)。 最简单的方法是什么?

我认为我的select是:

  1. 自动将csv文件转换为xlsx文件。 我怎样才能从脚本中做到这一点?
  2. 给Excel打开一些参数。 不知道微软产品的命令行参数。
  3. 在打开CSV文件并告诉它突出显示一个特定的文件之后,以某种方式与Excel进行交互。 再次不知道如何。

我更喜欢Java / Python / Shell或任何可以在Mac / Windows上工作的东西,假设系统安装了Excel。 所以,我最好的select可能是#1 ,这使我想起如何将CSV文件转换为xlsx文件。

这个工程很简单,保存在一个空的工作簿。

 Private Sub Workbook_Open() Workbooks.Open ("test.csv") Range("8:8").Select End Sub 

如果你保存在你的normal.dot(打开excel时的默认模板文件),它会运行在它打开的任何文件。 所以你可以做的是:

保存这个到你的normal.dot

 Private Sub Workbook_Open() Range("8:8").Select End Sub 

然后将打开.csv文件的默认应用程序更改为excel。 那么只要你双击.csv文件,就会用excel打开,而excel将运行Workbook_Open()子和中提琴!

你可以运行一个基本的vbs ,避免需要Excel已经打开,转换是没有必要的。

  1. 将下面的代码粘贴到文本编辑器的NotePad
  2. 更改CSV文件的path以适应(即“c:\ temp \ test2.csv”
  3. 将文件保存为类似MyCSV.vbs的文件

点击最终的vbs打开CSV文件到第X行(下面的示例中的8)

 Dim objExcel Dim WB Set objExcel = CreateObject("excel.application") Set WB = objExcel.Workbooks.Open("c:\temp\test2.csv") With objExcel .Goto WB.Sheets(1).Rows(8) .Visible = True End With