嘿,我一直在试图改变Excel表格中的单元格的颜色从红色到黑色。该代码使用一个txt文件来读取文件路径,然后将它们放入一个数组中。然后使用数组检查Excel表格中的红色字体颜色并将其更改为黑色。可悲的是,它不工作,我有我的VBscript调试知识非常有限,所以任何人都可以看一看,看看我做错了什么?试图改变excel表格列表中所有单元格的字体颜色
REM Attribute VB_Name = "Module1"
Sub SimpleMacro()
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
("pathlist.txt", ForReading)
Do Until objTextFile.AtEndOfStream
strNextLine = objTextFile.Readline
arrServiceList = Split(strNextLine , ",")
Wscript.Echo "Server name: " & arrServiceList(0)
For i = 1 to Ubound(arrServiceList)
Wscript.Echo "Service: " & arrServiceList(i)
Next
Loop
Set objWorkbook = objExcel.Workbooks.Open(arrServiceList)
Set objWorksheet = objWorkbook.Worksheets(1)
RedColor = RGB(255, 0, 0)
BlackColor = RGB(0, 0, 0)
'Get number of rows in the specified column
RowsCount = Range("A1" *.End(xlDown)).Rows.Count
'Select cell
Range("A1" *.End(xlDown)).Select
'Loop the cells
For x = 1 To RowsCount
If ActiveCell.Font.Color = RedColor Then
'Change the text color
ActiveCell.Font.Color = BlackColor
Else
ActiveCell.Font.Color = BlackColor
End If
ActiveCell.Offset(1, 0).Select
Next
End Sub
你是什么意思“不工作”?请具体说明? – shahkalpesh
'xlDown'将会是未知的,因为你是晚期绑定,在'ConstForReading = 1'后面加上'Const xlDown = -4121'。除了描述它是如何失败的。 –
对不起,太模糊了。当我运行它时,它不会将字体颜色从红色更改为黑色。因此pathlist.txt中有一个文件路径列表,它应该读取数组中的文件路径,然后进入它们并查找红色字体并将其更改为黑色。 – Cmasterd