|
Sub 收文单()
Dim newdoc As Object, wdoc As Object
'如果CDE列最后一个单元格均完整填写执行生成收文单
If Range("c65536").End(xlUp).Row = Range("d65536").End(xlUp).Row And Range("c65536").End(xlUp).Row = Range("e65536").End(xlUp).Row Then
Set newdoc = CreateObject("word.application")
newdoc.Visible = True
newdoc.Documents.Add
Set MYRANGE = newdoc.Activedocument.Range(Start:=0, End:=0) '设置表格起始点
newdoc.Activedocument.Tables.Add Range:=MYRANGE, NumRows:=7, NumColumns:= _
2, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed '新建收文表格
With newdoc.Activedocument.Tables(1)
.Style = "网格型"
.Range.Font.Name = "方正仿宋_GBK" '设置所有表格内字体为仿宋
.Range.Font.Size = 13 '设置所有表格内字体大小12磅
.Columns(1).PreferredWidth = 100 '第一列宽
.Columns(2).PreferredWidth = 300 '第二 列宽
.Rows.Height = 100 '行高
.Rows(1).Height = 35 '一二行高
.Rows(2).Height = 80 '一二行高
.Cell(1, 2).Split NumRows:=1, NumColumns:=2 '拆分第一二行单元格
.Cell(2, 2).Split NumRows:=1, NumColumns:=2 '拆分第一二行单元格
.Cell(1, 1).Range = "收文时间" '以下写入项目文本
.Cell(1, 2).Range = "来文字号"
.Cell(1, 3).Range = "来文机关"
.Cell(3, 1).Range = "文件题目"
.Cell(4, 1).Range = "党委主要领导批示"
.Cell(5, 1).Range = "政府主要领导意见"
.Cell(6, 1).Range = "分管领导阅处意见"
.Cell(7, 1).Range = "承办部门办理意见"
'从收文登记表将内容写入收文单
.Cell(2, 1) = Range("b65536").End(xlUp) '收文时间
.Cell(2, 2) = Range("c65536").End(xlUp) '来文字号
.Cell(2, 3) = Range("d65536").End(xlUp) '来文机关
.Cell(3, 2) = Range("e65536").End(xlUp) '文件题目
.Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter '垂直居中
.Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
End With
newdoc.Activate
' MsgBox "rjfi"
newdoc.Activedocument.PrintOut
newdoc.Quit wdDoNotSaveChanges '关闭WORD
End If
End Sub
我前几天刚好需要写了一个,只是我是每行新建的一个WORD,并且没有保存,打印完就关闭,看是否可以参考改一下 |
|