Microsoft Word 生成表格

Dim oWord As Object
Call BindWord(True)

Dim oDocument As Object
Set oDocument = oWord.ActiveDocument
Call NameList

Public Sub NameList()
On Error Resume Next
Dim RowsCount, ColsCount As Integer
With oDocument
.Paragraphs(.Paragraphs.Count).Range.Font.Name = “宋体”
.Paragraphs(.Paragraphs.Count).Range.Font.Size = 12
.Paragraphs(.Paragraphs.Count).Range.Font.Bold = False
.Paragraphs(.Paragraphs.Count).Alignment = 1
.Paragraphs(.Paragraphs.Count).Range.Text = “花名册”
RowsCount = 3
ColsCount = 4
.Tables.Add Range:=.Range(Start:=.Range.End – 1, End:=.Range.End), NumRows:=RowsCount, NumColumns:=ColsCount, DefaultTableBehavior:=1, AutoFitBehavior:=2 ‘wdAutoFitFixed = 0 wdAutoFitContent = 1 wdAutoFitWindow = 2
With .Tables(.Tables.Count)
.Range.Cells(1).Range.Text = “姓名”
.Range.Cells(2).Range.Text = “性别”
.Range.Cells(3).Range.Text = “年龄”
.Range.Cells(4).Range.Text = “职称”
.Range.Cells(5).Range.Text = “张三”
.Range.Cells(6).Range.Text = “男”
.Range.Cells(7).Range.Text = “36”
.Range.Cells(8).Range.Text = “工程师”
.Range.Cells(9).Range.Text = “李四”
.Range.Cells(10).Range.Text = “女”
.Range.Cells(11).Range.Text = “28”
.Range.Cells(12).Range.Text = “预算员”
End With
End With
On Error GoTo 0
End Sub

蒙古战争

元政权延续的时间虽不足百年,但它自统一蒙古诸部到其统治全国的末期,战争却连年不断。进行的主要战争大致分为:蒙古部族统一蒙古高原建立蒙古汗国的战争;蒙古灭夏、金的战争;蒙古军大规模西征的战争;灭亡南宋的战争;向周边国家扩张的战争;元末大规模农民起义战争等。

一、蒙古部族统一蒙古高原诸部、建立蒙古汗国的战争

铁木真(成吉思汗)统一蒙古诸部的战争蒙古尼伦敦孛儿只斤氏首领铁木真(成吉思汗)在逆境中崛起后便开始了统一蒙古诸部的战争。

这些战争起于南宋淳熙十二年、金大定二十五年(公元1185年)前后,止于南宋嘉泰二年、金泰和二年(公元1202年)。铁木真为统一蒙古诸部,先后对蔑里乞(蔑儿乞)、札木合部、泰赤乌等部族发动进攻并将对手一一击败。

铁木真统一蒙古高原建立蒙古汗国的战争这些战争起于南宋嘉泰二年、金泰和二年(公元1202年),止于南宋开禧二年、金泰和六年(公元1206年)。铁木真为统一蒙古高原诸部建立蒙古汗国,相继与塔塔儿、克烈部、札木合联军、乃蛮部及其联军交战,逐次将其击灭,建立了第一个统一的蒙古汗国。

二、蒙古击灭西夏和西辽的战争

成吉思汗自南宋开禧元年(公元1205年起,便开始了进攻西夏的战争,至南宋宝庆三年(公元1227年),经过六次作战将西夏灭亡,并进行了击灭西辽的战争。

三、蒙古击灭金朝的战争

蒙古军自南宋嘉定三年、金大安二年、蒙古国五年(公元1210年)1起,开始了进攻金王朝的战争,经过乌沙堡、会河堡和河北、山西、山东等地的作战,节节战胜金军的反抗,推进至黄河北岸。继之,蒙古军又经过均州三峰山决战、南京之战、蔡州之战,于南宋端平元年、金天兴三年、蒙古窝阔台汗六年(公元1234年),将金王朝击灭。

四、蒙古军西征的战争

第一个时期(成吉思汗)西征起于南宋嘉定十二年、蒙古国十四年(公元1219年),止于嘉定十六年、蒙古国十八年(公元1223年)。蒙古主成吉思汗亲统大军,分为东、西两大集团西征。

东集团主要征花刺子模,西集团则远征高加索、斡罗思地区蒙古军通过锡尔河之战、阿姆河之战、玉龙杰赤之战、呼拉珊以及高加索等地区的作战,将强大的西域花剌子模国击灭,并击降了中亚地区的若干部族国。

第二个时期(拔都)西征欧洲地区的战争蒙古主以大将拔都为统帅,自南宋端平三年,蒙古窝阔台汗八年(公元1236年)起,开始了远征欧洲地区的战争。

蒙古军经过征战北部斡罗思和南部斡罗思地区的作战,以及与马札尔(匈牙利)军的连续作战,将斡罗思、马札尔(匈牙利)、捷克、斯洛伐克等国军队一一击败,于南宋淳祐二年、乃马真后元年(公元1242年)胜利结束战争。

第三个时期(旭烈兀)西征波斯等地的战争蒙古主蒙哥汗继承大汗位不久,便于南宋淳祐十二年、蒙哥汗二年(公元1252年),派大将旭烈兀统军西征波斯等地区。

经与木剌夷、黑衣大食(报达)、苫国(叙利亚)等连续作战,将上述诸国击灭。旭烈兀军于南宋景定元年、蒙古忽必烈中统元年(公元1260年),胜利回师。

五、蒙古(元)灭亡南宋的战争蒙古进攻南宋第一个时期的战争南宋理宗端平元年、蒙古窝阔台汗六年(公元1234年),南宋乘蒙古军灭金后北撤之际发兵北进,双方开始了第一个时期的战争。

蒙古以东、中、西三路大军南下攻宋,通过江淮地区、荆襄地区、甘陕地区以及四川地区的交战,至南宋淳祐二年、蒙古乃马真后元年(公元1242年),宋军将蒙古军南下东进的企图挫败。

蒙古进攻南宋第二个时期的战争蒙古自南宋淳祐十二年、蒙哥汗二年(公元1252年)起,开始了第二个时期南下攻宋的战争。

蒙古军通过战略大迂回进行大理之战、四川之战、鄂州之战,欲从侧背攻取南宋都城临安、灭亡南宋王朝。由于遭南宋军顽强抗击,未能如愿。

至南宋景定蒙古(元)军第三个时期进攻南宋的战争蒙古自南宋咸淳四年、元年,蒙古主将忽必烈撤军北归。

元世祖至元五年(公元1268年),展开对南宋第三个时期的战争,一直持续到南宋祥兴二年、元世祖至元十六年(公元1279年)。

蒙古军经过襄阳襄城之战、郢州之战、鄂州之战、四川地区之战、江淮地区之战、临安之战等,最后将南宋王朝击灭。

六、蒙古(元)进攻东亚和东南亚诸国的战争

蒙古从窝阔台汗当政的第三年(公元1231年)起,便开始了断续进攻高丽、日本、安南、占城国和缅国的战争。蒙古军除兵败日本外,依次将高丽、安南、占城和缅国征服

七、元朝末期的农民起义战争

元统治阶级长期推行的民族歧视和民族压迫政策,至元朝末期便使社会和阶级矛盾日益尖锐,自元顺帝至正十一年(公元1351年)起,爆发了推翻元王朝统治的大规模农民起义战争。其中规模最大的有:

韩山童、刘福通领导的红巾军起义;彭莹玉徐寿辉领导的农民起义;郭子兴、孙德崖、朱元璋领导的农民起义;明玉珍领导的农民起义这些农民起义军和反元武装,经过不断与元军拼杀,均占据了一定地等;此外,还有张士诚领导的反元起义。

朱元璋集团凭借农民起义军的声势发展壮大后,自元顺帝至正二十年区,对元王朝的反动统治给予了沉重打击。(公元1360年)开始,便不断与张士诚、陈友谅等部进行了激烈交战。朱元璋集团通过与陈友谅的鄱阳湖决战、与张士诚的两淮地区之战和其后的平江决战,终将陈友谅和张士诚两大割据势力击灭,进而全部统一了江南地区。

Microsoft Word 基本操作

‘绑定 Microsoft Word
Dim oWord As Object ‘Microsoft Word Application 本身
Call BindWord(True)
Dim oDocument As Object ‘Microsoft Word 多文档之一

‘打开并绑定文件 D:/Test.rtf
Set oDocument = oWord.Application.Documents.Open(“D:/Test.rtf”)

‘绑定已经打开文件 Demo.doc
Set oDocument = oWord.Documents.Item(“Demo.doc”)

‘新建文件并绑定
Set oDocument = oWord.Documents.Add

‘绑定已经打开的当前文件
Set oDocument = oWord.ActiveDocument

‘另存文件并指定格式
oDocument.SaveAs “D:/TestBack”, FileFormat:=6 ‘RTF Format

‘退出 Microsoft Word 并释放资源
oWord.Quit
Set oWord = Nothing
Set oDocument = Nothing

AutoCAD 图元绘制

Dim oAutoCAD As Object
Call BindAutoCAD(True)

Dim dStartPoint(0 To 2) As Double
Dim dEndPoint(0 To 2) As Double
Dim dCenterPoint(0 To 2) As Double
Dim sTextString As String
Dim dHeight As Double
Dim dRadius As Double

dStartPoint(0) = 10
dStartPoint(1) = 10
dStartPoint(2) = 0
dEndPoint(0) = 100
dEndPoint(1) = 100
dEndPoint(2) = 0
dCenterPoint(0) = 10
dCenterPoint(1) = 10
dCenterPoint(2) = 0
sTextString = “Hello world!”
dHeight = 6
dRadius = 24

Call DrawLine(dStartPoint, dEndPoint)
Call DrawText(sTextString, dStartPoint, dHeight)
Call DrawCircle(dCenterPoint, dRadius)

Public Sub DrawLine(vStartPoint As Variant, vEndPoint As Variant) ‘绘制直线
Dim oLine As Object
Set oLine = oAutoCAD.ActiveDocument.ModelSpace.AddLine(vStartPoint, vEndPoint)
End Function

Public Sub DrawText(sTextString As String, vStartPoint As Variant, vHeight As Variant) ‘写入文本
Dim oText As Object
Set oText = oAutoCAD.ActiveDocument.ModelSpace.AddText(sTextString, vStartPoint, vHeight)
End Function

Public Sub DrawCircle(vCenterPoint As Variant, vRadius As Variant) ‘绘制圆
Dim oCircle As Object
Set oCircle = oAutoCAD.ActiveDocument.ModelSpace.AddCircle(vCenterPoint, vRadius)
End Function

AutoCAD 环境设置

Dim oAutoCAD As Object
Call BindAutoCAD(True)

Dim sLayerName As String
Dim iColor As Integer
Dim sTextStyle As String
Dim iMode As Integer

sLayerName = “平面”
iColor = 1 ‘Red
sTextStyle = “汉字”
iMode = 519 ‘端点 1 + 中点 2 + 圆心 4 + 最近点 512

Call AddLayer(sLayerName, iColor)
Call AddTextStyle(sTextStyleName)
Call SetOSMode(iMode)

Public Sub AddLayer(sLayerName As String, iColor As Integer) ‘增加图层
Dim oLayer As Object
Set oLayer = oAutoCAD.ActiveDocument.Layers.Add(sLayerName)
oLayer.Color = iColor
oAutoCAD.ActiveDocument.ActiveLayer = oLayer
End Function

Public Sub AddTextStyle(sTextStyleName As String) ‘添加或修改字体
Dim oTextStyle As Object
Set oTextStyle = oAutoCAD.ActiveDocument.TextStyles.Add(sTextStyleName)
oTextStyle.BigFontFile = “hztxt.shx”
oTextStyle.FontFile = “romans.shx”
oTextStyle.Height = 8
oTextStyle.Width = 0.6
oAutoCAD.ActiveDocument.ActiveTextStyle = oTextStyle
End Function

Public Sub SetOSMode(ByVal iMode As Integer) ‘设置对象捕捉模式
oDraw.SetVariable “OSMODE”, iMode
‘使用以下位码设置“对象捕捉”的模式(OSNAP mode):
‘0 NON (无)
‘1 END(端点)
‘2 MID(中点)
‘4 CEN (圆心)
‘8 NOD (节点)
’16 QUA (象限点)
’32 INT(交点)
’64 INS (插入点)
‘128 PER (垂足)
‘256 Tan (切点)
‘512 NEA (最近点)
‘1024 QUI (快速)
‘2048 App (外观交点)
‘4096 EXT (尺寸线)
‘8192 PAR (平行)
‘要指定多个对象捕捉方式,请输入各个位码值之和。
End Sub