麻辣家族討論版版's Archiver

偉婕 發表於 2018-6-12 23:44

請問如何快速將每一筆資料串起來

[i=s] 本帖最後由 偉婕 於 2018-6-12 23:54 編輯 [/i]

同事說她在[google日曆]中輸入了一些資料後,想將資料匯出來在Word中再做處理,可是發現資料長度好像有限制,有些較長的資料都會被截成兩行,要怎麼快速將每一筆資料串在一起?

我試著於[尋找目標]中輸入(^13)([!^1-^127])(*)(^13)
而[取代為]中輸入\2\3\4
是可以將大部分的資料每一筆都串起來,可是如果遇到截斷的地方是數字的話就失效了

後來我試著將所有^p取代掉,將所有資料全部串在一起,再拆資料
可是因為她一次都匯很多天的資料,所以就會把[2018-XX-XX(週X)]也串在一起,因此要教她很多尋找取代的步驟,由於她對這方面操作較不熟
所以想問問大家有沒有其他解法,先謝謝大家了

==========================================

例子:
2018-06-12(週二)
07:00 - 07:30 關於保留英文字部分,可以利用尋找功能關於保留英文字部分,可以利用尋找功
能關於保留英文字部分,可以利用尋找功能
08:00 - 09:00 關於保留中文字部分,可以利用取代功能
09:00 - 10:00 關於保留中文字部分,可以利用取代功能關於保留中文字部分,可以利用0927-
123456
10:00 - 10:30 關於保留中文字部分,可以利用取代功能關於保留中文字部分,可以利用尋找
1號

---------------------------------
例子最後希望呈現結果:
2018-06-12(週二)
07:00 - 07:30 關於保留英文字部分,可以利用尋找功能關於保留英文字部分,可以利用尋找功能關於保留英文字部分,可以利用尋找功能
08:00 - 09:00 關於保留中文字部分,可以利用取代功能
09:00 - 10:00 關於保留中文字部分,可以利用取代功能關於保留中文字部分,可以利用0927-123456
10:00 - 10:30 關於保留中文字部分,可以利用取代功能關於保留中文字部分,可以利用尋找1號

linyancheng 發表於 2018-6-17 19:37

[i=s] 本帖最後由 linyancheng 於 2018-6-17 19:40 編輯 [/i]

試試這個VBA代碼,
可處理截斷成兩行或三行以上的資料串,
但日期及時間格式必須有此規律性。

Sub 資料串連()

    Dim P As Paragraph
    Dim timeP As Paragraph
   
    For Each P In ActiveDocument.Paragraphs
        If Left(P.Range.Text, 13) Like "??:?? - ??:??" Then
            Set timeP = P
        ElseIf Left(P.Range.Text, 10) Like "????-??-??" Then
            '不處理
        Else
            If Not timeP Is Nothing Then
                timeP.Range.Text = Replace(timeP.Range.Text, vbCr, "")
            End If
        End If
    Next P

End Sub

linyancheng 發表於 2018-6-17 19:53

VBA代碼文件

偉婕 發表於 2018-6-17 23:39

[b]回復 [url=http://forum.twbts.com/redirect.php?goto=findpost&pid=103855&ptid=20870]3#[/url] [i]linyancheng[/i] [/b]

感謝版主的幫忙,解決我同事及我的問題了,再次感謝!

頁: [1]

麻辣家族討論版版為 麻辣學園 網站成員  由 昱得資訊工作室 © Since 1993 所提供