- ©«¤l
- 5923
- ¥DÃD
- 13
- ºëµØ
- 1
- ¿n¤À
- 5986
- ÂI¦W
- 0
- §@·~¨t²Î
- win10
- ³nÅ骩¥»
- Office 2010
- ¾\ŪÅv
- 150
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¥xÆW°ò¶©
- µù¥U®É¶¡
- 2010-5-1
- ³Ì«áµn¿ý
- 2022-1-23
|
¦^´_ 1# °¶ÔÐ
Ãö©óword ªºvba §Ú¤£¼ô¦b¦¹ÄmÁà¤F,¦p¦³¯Ê¥¢©|½Ð«ü±Ð word¤º¦³¤@Ä欰¬Û¤ù©|»Ý°ª¤â«ü¤Þ
ªþ¥óªºxls»Pwordªº¸ê®Æ¤£¤@P ½Ð¦Û¦æ×¥¿
- Sub Ex()
- Dim MyXls As Object, Rng As Object, First As String, ii%, i%, T%, C%
- Set MyXls = CreateObject("EXCEL.APPLICATION")
- First = "E2" 'ªþÀÉ991011.xlsÀɮ׸ê®Æ¤¤²Ä¤@µ§¸ê®Æªº¦ì¸m
- With MyXls
- .Visible = True
- .WORKBOOKS.Open ("D:\TEST\991011.xls") '¥´¶} xls¸ê®ÆÀÉ
- Set Rng = .WORKBOOKS(1).SHEETS(1).Range(First).End(2)
- Set Rng = Rng.End(4)
- Set Rng = .WORKBOOKS(1).SHEETS(1).Range(First, Rng) '¨ú±o¸ê®Æ
- End With
- Documents.Open "d:\test\991011.doc" ' ¥´¶}«ü©wªºword
- If Rng.Rows.Count > 5 Then ' ½Æ»sªí®æ
- For i = 6 To Rng.Rows.Count Step 5 'Word¨C¤@¸ê®Æªí®æ¼Æ=5
- Set myRange = ActiveDocument.Range(Start:=ActiveDocument.Range.End - 1, End:=ActiveDocument.Range.End)
- With ActiveDocument.Tables(1)
- .Select
- Selection.Copy
- End With
- myRange.Select
- Selection.TypeParagraph
- Selection.TypeParagraph
- Selection.Paste
- Next
- End If
- C = 1: T = 1
- For i = 1 To Rng.Rows.Count '''''''''''''''½Æ»sxls¸ê®Æ ¨ì Wordªí®æ
- For ii = 1 To Rng.Columns.Count
- ActiveDocument.Tables(T).Cell(ii + IIf(ii <= 10, 1, 2), 1 + IIf(ii < 10, C, C + 1)).Range = Rng(i, ii)
- Next
- If i Mod 5 <> 0 Then
- C = C + 1
- Else
- T = Int(i / 5) + 1: C = 1
- End If
- Next '''''''''''''''½Æ»sxls¸ê®Æ ¨ì Wordªí®æ
- MyXls.Quit 'Ãö³¬xls ÀÉ®×
- 'ActiveDocument.PrintOut '¦L¦CÀÉ®×
- 'ActiveDocument.SaveAs "d:\test\???doc" '¦sÀÉ
- Application.Quit 'Ãö³¬ Word
- End Sub
½Æ»s¥N½X |
|