Board logo

標題: [發問] 由於MsgBox內容過長會顯示異常,請問如何將程式改寫成UserForm的TextBox? [打印本頁]

作者: av8d    時間: 2012-6-23 16:33     標題: 由於MsgBox內容過長會顯示異常,請問如何將程式改寫成UserForm的TextBox?

本帖最後由 av8d 於 2012-6-24 19:29 編輯

由於MsgBox內容過長會顯示異常,聽說TextBox既可以延伸又可以複製貼,請問如何將程式改寫成UserForm的TextBox視窗?
  1. Sub Music()
  2.     Dim J1%, S1$, S2$
  3.     With 工作表2.WindowsMediaPlayer1     '加入MediaPlayer播放音樂
  4.         .URL = "D:\數羊歌.mp3"  '請修改音樂檔案
  5.         .Visible = False
  6.         .Controls.stop
  7.     End With
  8.     For J1 = 4 To Sheets("Data").[A65536].End(xlUp).Row
  9.         If Range("A" & J1) <> "" And IsDate(Range("A" & J1)) Then
  10.         ''''''''''''''''''''''''''''''''''''''''''''''''
  11.             A1 = DateDiff("D", Date, Range("A" & J1))
  12.             If A1 >= 0 And A1 <= 15 Then S1 = "可於【" & (-1) * (A1) & "天】後繳費" & ",繳費金額為【" & Sheets("Data").Range("C" & J1) & "元】"
  13.             If A1 <= 10 Then S1 = "可於【" & (-1) * (A1) & "天】後繳費" & ",繳費金額為【" & Sheets("Data").Range("C" & J1) & "元】"
  14.             If A1 <= 5 Then S1 = "可於【" & (-1) * (A1) & "天】後繳費" & ",繳費金額為【" & Sheets("Data").Range("C" & J1) & "元】"
  15.             'If A1 < 0 Then S1 = "已過期" & (-1) * (A1) & "天"
  16.             If S1 <> "" Then S2 = S2 & "您有一筆於【" & Sheets("Data").Range("A" & J1) & "】消費的【" & Sheets("Data").Range("D" & J1) & "】費用," & S1 & vbNewLine & vbNewLine
  17.             S1 = "": A1 = 0
  18.         '''''''''''''''''''''''''''''''''''''''''''
  19.         End If
  20.     Next
  21.     If S2 <> "" Then
  22.         With 工作表2.WindowsMediaPlayer1     '加入MediaPlayer播放音樂
  23.             .URL = "D:\數羊歌.mp3"  '請修改音樂檔案
  24.             .Visible = False
  25.             .Controls.Play          '播放音樂
  26.           ''''''''''''''''''''''''''''''''''''
  27.             MsgBox S2
  28.             .Controls.stop          '關閉音樂
  29.             '''''''''''''''''''''''''''''''''
  30.         End With
  31.     End If
  32. End Sub
複製代碼

作者: hugh0620    時間: 2012-6-28 18:42

回復 1# av8d


    MsgBox S2
    用userform+textbox
     With UserForm1.TextBox1
            .Text = S2
            .WordWrap = True
            .Enabled = False
    End With
    UserForm1.Show

    這樣就可以了




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)