两个Excel问题 - 查找字符串值并保存Excel电子表格

时间:2012-09-13 14:54:05

标签: excel vbscript

我正在制作一个输出到excel电子表格的vbscript。 这将在不同的日子在多个系统上运行,因此我想创建电子表格的名称 主机名&安培;日期的.xls

我怎么能像它一样进行保存,我一直在谷歌搜索但找不到它。

另外,我只有两列,但第二列中的一些文本将是“Test PASSED”或“Test FAILED”。大约有25行。我想这样做,所以在第二列中有“TEST PASSED”的行是绿色,然后是红色,反之亦然。

我应该怎么做?

2 个答案:

答案 0 :(得分:1)

ActiveWorkbook.SaveAs *filename*

Cells(1, 1).Font.ColorIndex = 3 
Cells(1, 1).Font.Bold = TRUE
Cells(1, 1).Font.Size = 12

如果我记得右红色是3,绿色是4.此外,任何范围对象都应该用于更改像Font这样的样式属性。所以范围,选择等都可以。

要获取新文件名,我会使用以下代码...

Set objSysInfo = CreateObject( "WinNTSystemInfo" )
filename = objSysInfo.ComputerName & "-" & Year(Now) & right("00" & Month(Now), 2) & ".xls"
WScript.Echo Replace(WScript.ScriptFullName, WScript.ScriptName, filename) 

答案 1 :(得分:1)

我更喜欢条件格式:

  With Table1.Range("$A:$A,$B:$B").FormatConditions.Add( _
        Type:=xlExpression, _
        Formula1:="=AND($B1=""Y"")")

   .Interior.Color = RGB(255, 0, 0)
  End With

  With Table1.Range("$A:$A,$B:$B").FormatConditions.Add( _
        Type:=xlExpression, _
        Formula1:="=AND($B1=""X"")")

   .Interior.Color = RGB(0, 255, 0)
  End With

随意将 Table1 替换为任何其他表对象。

ADD 新格式条件每次执行此代码。

要创建文件名,您可以使用Format(Now,"dd/mm/yyyy")和Omnikrys代码 - 或 FileDialog-Object

这里有一个完整的例子:

ActiveWorkbook.SaveAs Environ$("computername") & "_" & Format(Now, "dd-mm-yyyy") & ".xlsx"