从 Excel VBA 数据导出到 MS Project 设置行高
Exporting from Excel VBA data to MS Project set rows height
我有 Excel 从 excel 工作簿生成 MS Project 时间表。除了 MS Project 中的行高外,一切都很好。我正在使用 ColumnBestFit 命令自动调整单元格宽度,它做得很好,但随后 MS Project 出于某种原因将我的文本包装在 "Task Name" 字段中。我想为项目中的所有行调整相同的高度。添加以下代码怎么可能?
Sub SaveProjectToTheSameFolder()
Dim pjApp As Object
Dim I As Integer ' Index used in For...Next loop.
Dim r As Integer ' Index used in For...Next loop.
Set pjApp = CreateObject("MSProject.Application")
pjApp.Visible = True
For I = 3 To 6
pjApp.ColumnBestFit Column:=I
Next I
For r = 1 To 120
RowHeight = 15
pjApp.WrapText
Next r
pjApp.FileSaveAs ThisWorkbook.Path & "\" & Worksheets("MAIN").Range("D14").Value & ", " & Worksheets("MAIN").Range("D11").Value & "_" & "timeschedule" & "_" & ".mpp"
pjApp.FileClose
pjApp.Quit
End Sub
使用应用程序对象的SetRowHeight方法更改特定行或所有行的行高。要将第 1-120 行的高度更改为双倍高度,请执行以下操作:SetRowHeight 2, "1-120"
。无需循环并跳过 pjApp.WrapText
,因为这将撤消 SetRowHeight
并将行高更改为根据活动列自动调整。
注意:行高最初是在 Table 设置中定义的,并且所有行都设置为相同,除非一个或多个列设置为换行,在这种情况下,行高将为自动适应。 (参见 TableRowHeight property and TableField.AutoWrap 属性)。
我有 Excel 从 excel 工作簿生成 MS Project 时间表。除了 MS Project 中的行高外,一切都很好。我正在使用 ColumnBestFit 命令自动调整单元格宽度,它做得很好,但随后 MS Project 出于某种原因将我的文本包装在 "Task Name" 字段中。我想为项目中的所有行调整相同的高度。添加以下代码怎么可能?
Sub SaveProjectToTheSameFolder()
Dim pjApp As Object
Dim I As Integer ' Index used in For...Next loop.
Dim r As Integer ' Index used in For...Next loop.
Set pjApp = CreateObject("MSProject.Application")
pjApp.Visible = True
For I = 3 To 6
pjApp.ColumnBestFit Column:=I
Next I
For r = 1 To 120
RowHeight = 15
pjApp.WrapText
Next r
pjApp.FileSaveAs ThisWorkbook.Path & "\" & Worksheets("MAIN").Range("D14").Value & ", " & Worksheets("MAIN").Range("D11").Value & "_" & "timeschedule" & "_" & ".mpp"
pjApp.FileClose
pjApp.Quit
End Sub
使用应用程序对象的SetRowHeight方法更改特定行或所有行的行高。要将第 1-120 行的高度更改为双倍高度,请执行以下操作:SetRowHeight 2, "1-120"
。无需循环并跳过 pjApp.WrapText
,因为这将撤消 SetRowHeight
并将行高更改为根据活动列自动调整。
注意:行高最初是在 Table 设置中定义的,并且所有行都设置为相同,除非一个或多个列设置为换行,在这种情况下,行高将为自动适应。 (参见 TableRowHeight property and TableField.AutoWrap 属性)。