VBS中的CurrentRegion.Select和Table格式

时间:2014-03-14 23:17:11

标签: vbscript

我是非常新的(1周)到视觉基础,基本上我正在尝试自动化一些重复性工作,现在到了这一点,在使用不同数据生成的大量文件中,我需要将所选范围格式化为桌子(中等9)但是我现在在一个街区并需要一些帮助而且非常感谢它,这是我迄今为止所拥有的>>>>

  Option Explicit

Dim strDate, strRepDate, strPath, strPathRaw , strDate2

dim dteTemp, dteDay, dteMth, dteYear, newDate, myDate

myDate = Date()
dteTemp = DateAdd("D", -1, myDate)
dteDay = DatePart("D", dteTemp)
dteMth = DatePart("M", dteTemp)
dteYear = DatePart("YYYY", dteTemp)

If (Len(dteDay) = 1) Then dteDay = "0" & dteDay
If (Len(dteMth) = 1) Then dteMth = "0" & dteMth

strDate = dteYear&"-"&dteMth&"-"&dteDay
strDate2 = dteYear&""&dteMth&""&dteDay

Dim objXLApp, objXLWb, objXLWs

Set objXLApp = CreateObject("Excel.Application")
Set objXLWb = objXLApp.Workbooks.Open("C:\Users\CuRrY\Desktop\"&strDate2&"\Agent Daily Disposition  "&strDate2&".xls")
objXLApp.Application.Visible = True
'start excell
Set objXLWs = objXLWb.Sheets(1)
'objXLWs.Cells(Row, Column ).Value 

  With objXLWs
  objXLWs.Cells(3, 1).Value = "Agent Name"
  'objXLWs.Range("A3").Select
  objXLWs.Range("A3").CurrentRegion.Select


 'End With

你可以看到我到达CurrentRegion.Select,但是如何将所选单元格格式化为(中9)我已经尝试过这么多而且失败了 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

您可以通过SpecialCells Submethod配置CurrentRegion(表示Range对象)。虽然您的条件特定于xls工作表,但您仍然必须遵循specialcells()方法属性提供的格式。此外,通过使用currentregion属性,该页面假定您有一个xls标头。因此,在尝试合并此属性之前验证表结构非常重要。

例如:

Sub FillIn()
  Range("A1").CurrentRegion.SpecialCells(xlCellTypeBlanks).FormulaR1C1 _
  = "=R[-1]C"
  Range("A1").CurrentRegion.Value = Range("A1").CurrentRegion.Value
End Sub

查看可应用于CurrentRegion的可用属性 - > Here 和MSDN文章 - > Here