標題:
[發問]
EXCEL班表程式自動轉換WORD
[打印本頁]
作者:
d82625348
時間:
2018-2-23 11:15
標題:
EXCEL班表程式自動轉換WORD
各位大大好,詢問各位如何將EXCEL利用VBA,如附件一、附件二,利用附件一格式轉換成WORD附件二那樣,抓取日期後,顯示每次早班巡查人員,不然公司每次都要一直打,人數多、班次多還是一次挺綑擾的事,煩請各位大大幫忙解答,謝謝大家!
作者:
nolookyou
時間:
2018-5-23 18:04
回復
1#
d82625348
版大晚安,讓小弟獻醜幫您一下~
我發現站上需要EXCEL內的資料轉成WORD的需求偶爾還是有,
但是查站上文章或GOOGLE上面對於EXCEL內的資料轉成WORD資料,
程式碼寫的內容,有些寫的很片段,有些寫的方法有點迂迴,
所以小弟獻上自行研究最簡單與直覺的寫法給未來有需要的大家,
以下是以此題為範例的寫法,按下[資料寫入WORD]按鈕,便能將EXCEL內的資料轉寫到WORD裡面:
[attach]28763[/attach]
[attach]28764[/attach]
[attach]28765[/attach]
Private Sub CommandButton1_Click()
Dim WDApp As Object
Dim WDDoc As Object
Dim WDSelect As Object
Dim i As Integer
Dim j As Integer
Dim date_str As String
Dim name_str As String
Set WDApp = CreateObject("Word.Application")
Set WDDoc = WDApp.Documents.Add
Set WDSelect = WDApp.Selection
WDApp.Visible = True
With WDSelect
For i = 2 To 20 Step 3
date_str = Worksheets("工作表1").Cells(1, i)
.TypeText Text:=date_str
.TypeParagraph
name_str = ""
For j = 2 To 8
If Worksheets("工作表1").Cells(j, i) = "巡" Then name_str = name_str & Worksheets("工作表1").Cells(j, 1) & "、"
Next j
.TypeText Text:=Left(name_str, Len(name_str) - 1)
.TypeParagraph
.TypeParagraph
Next i
End With
End Sub
複製代碼
有錯誤或有更精進寫法,再麻煩站上前輩與各路大神不吝指教,來造福未來有需要的網友們。
作者:
d82625348
時間:
2018-6-9 18:53
太實用了~謝謝nolookyou提供!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)