註冊
登錄
首頁
論壇版規
禁止列表
說明
地圖
數位書香
私人消息 (0)
公共消息 (0)
論壇任務 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
麻辣家族討論版版
»
Excel程式區
» 請問可以利用vba來達到自動斷行的效果嗎?
返回列表
下一主題
上一主題
發帖
[發問]
請問可以利用vba來達到自動斷行的效果嗎?
棋語鳥鳴
發短消息
加為好友
棋語鳥鳴
當前離線
UID
3560
帖子
178
主題
53
精華
0
積分
242
金錢
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
在線時間
85 小時
註冊時間
2011-2-22
最後登錄
2025-4-17
中學生
帖子
178
主題
53
精華
0
積分
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
註冊時間
2011-2-22
最後登錄
2025-4-17
1
#
跳轉到
»
倒序看帖
打印
字體大小:
t
T
發表於 2011-9-30 22:07
|
只看該作者
[發問]
請問可以利用vba來達到自動斷行的效果嗎?
例如:我在"B2"
儲存格
中輸入 "名稱1,名稱2,名稱3,名稱4,名稱5,名稱6,名稱7,名稱8,名稱9,名稱10,名稱11"
我想要以逗號為依據,當遇到第4個逗號後~下一個文字~自動跳到下一行(有如ALT+ENTER),以上"B2"儲存格來說,
"B2"則變成:
名稱1,名稱2,名稱3,名稱4,
名稱5,名稱6,名稱7,名稱8,
名稱9,名稱10,名稱11
請問此
巨集
如何
設??
另外請問如果儲存格中有斷行,要如何利用巨集恢復???
樓主熱帖
請問如何將指定的工作表!另存成一個新的活頁
請問如何利用vba刪除活頁簿中的工作表?
請問超連結儲存格如何抓取?
請問各位用excel的高手們!如何收尋指定儲存
請問如何在excel中設定帳號密碼??(以解決)
如何利用Sheet1的Q欄顏色當標準,複製當列之
請問如何計算單月中之出現次數
請問如何讓滑鼠點擊儲存格時,於另一個儲存
請問如何自動新增工作表,並將名稱改成文字
請問:四捨六入五成雙的Function要如何寫??
收藏
分享
luhpro
發短消息
加為好友
luhpro
當前離線
UID
47
帖子
835
主題
6
精華
0
積分
915
金錢
915
點名
0
作業系統
Win 10,7
軟體版本
2019,2013,2003
閱讀權限
50
性別
男
在線時間
429 小時
註冊時間
2010-5-3
最後登錄
2024-11-14
高中生
帖子
835
主題
6
精華
0
積分
915
點名
0
作業系統
Win 10,7
軟體版本
2019,2013,2003
閱讀權限
50
性別
男
註冊時間
2010-5-3
最後登錄
2024-11-14
2
#
發表於 2011-10-1 10:08
|
只看該作者
回復
1#
棋語鳥鳴
若單純只是對儲存格內容做自動斷行處理那是做得到的.
但若想在輸入過程中就要處理的話,
我目前還沒試出方法,
所以就先提供一半的功能囉.
自動斷行-Ans.zip
(11.88 KB)
自動斷行-Ans.xls
下載次數: 14
2011-10-1 10:07
TOP
棋語鳥鳴
發短消息
加為好友
棋語鳥鳴
當前離線
UID
3560
帖子
178
主題
53
精華
0
積分
242
金錢
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
在線時間
85 小時
註冊時間
2011-2-22
最後登錄
2025-4-17
中學生
帖子
178
主題
53
精華
0
積分
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
註冊時間
2011-2-22
最後登錄
2025-4-17
3
#
發表於 2011-10-1 12:43
|
只看該作者
回復
2#
luhpro
謝謝您這麼熱心的回覆~不過.....我想要的是~讓他斷行後~資料還是在"同一個"儲存格,而不是分開的!
而其資料~是全部輸入完再斷行即可!
TOP
luhpro
發短消息
加為好友
luhpro
當前離線
UID
47
帖子
835
主題
6
精華
0
積分
915
金錢
915
點名
0
作業系統
Win 10,7
軟體版本
2019,2013,2003
閱讀權限
50
性別
男
在線時間
429 小時
註冊時間
2010-5-3
最後登錄
2024-11-14
高中生
帖子
835
主題
6
精華
0
積分
915
點名
0
作業系統
Win 10,7
軟體版本
2019,2013,2003
閱讀權限
50
性別
男
註冊時間
2010-5-3
最後登錄
2024-11-14
4
#
發表於 2011-10-1 16:55
|
只看該作者
本帖最後由 luhpro 於 2011-10-1 17:08 編輯
回復
3#
棋語鳥鳴
喔...
那就很簡單了, 只要有底下的程式就可其他的都可以拿掉了 :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sStr$
Dim iI%
Dim lJ As Long, lLen As Long
On Error GoTo ErrorHandler
Application.EnableEvents = False
With Target
sStr = .Value
lLen = Len(sStr)
iI = 0
lJ = 1
Do While lJ < lLen
If Mid(sStr, lJ, 1) = "," Then iI = iI + 1
If iI = 4 Then
.Value = Left(sStr, lJ) & Chr(10) & Right(sStr, Len(sStr) - lJ)
sStr = .Value
lLen = Len(sStr)
lJ = lJ + 1
iI = 0
End If
lJ = lJ + 1
Loop
End With
Application.EnableEvents = True
Exit Sub
ErrorHandler:
Select Case Err.Number
Case 13 ' 刪除列會導致 Target 為 Null 此時引用 .Value 會發生錯誤
sStr = ""
End Select
Resume Next
End Sub
複製代碼
TOP
棋語鳥鳴
發短消息
加為好友
棋語鳥鳴
當前離線
UID
3560
帖子
178
主題
53
精華
0
積分
242
金錢
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
在線時間
85 小時
註冊時間
2011-2-22
最後登錄
2025-4-17
中學生
帖子
178
主題
53
精華
0
積分
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
註冊時間
2011-2-22
最後登錄
2025-4-17
5
#
發表於 2011-10-1 20:27
|
只看該作者
回復
4#
luhpro
不好意思~如果我想以按鈕方式呈現(而不是去點擊),且只想對某個範圍的儲存格(例如B2:B10)進行斷行,請問要如何修改此程序??
TOP
Hsieh
發短消息
加為好友
Hsieh
當前在線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
118
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4137 小時
註冊時間
2010-4-30
最後登錄
2025-5-16
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
118
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2025-5-16
6
#
發表於 2011-10-1 22:44
|
只看該作者
Sub 分行()
Dim A As Range, Ar()
For Each A In Selection
mystr = A
For i = 1 To Len(A)
If Mid(A, i, 1) = "," Then s = s + 1
If s Mod 4 = 0 And Mid(A, i, 1) = "," Then
mystr = Application.WorksheetFunction.Replace(mystr, i, 1, Chr(10))
End If
Next
A = mystr: s = 0
Next
End Sub
Sub 復原()
For Each A In Selection
A.Value = Replace(A, Chr(10), ",")
Next
End Sub
複製代碼
回復
5#
棋語鳥鳴
學海無涯_不恥下問
TOP
棋語鳥鳴
發短消息
加為好友
棋語鳥鳴
當前離線
UID
3560
帖子
178
主題
53
精華
0
積分
242
金錢
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
在線時間
85 小時
註冊時間
2011-2-22
最後登錄
2025-4-17
中學生
帖子
178
主題
53
精華
0
積分
242
點名
0
作業系統
xp
軟體版本
2007
閱讀權限
20
註冊時間
2011-2-22
最後登錄
2025-4-17
7
#
發表於 2011-10-2 10:25
|
只看該作者
回復
6#
Hsieh
原來mid還有這種功能!感謝您的回覆!看來我要多學學函數加巨集的應用!
TOP
靜思自在 :
知識要用心體會,才能變成自己的智慧。
返回列表
下一主題
上一主題
EXCEL專屬討論區
Excelㄧ般區
Excel程式區
進階應用專區
OFFICE 系列
Word
PowerPoint
Access
Office不分區
程式語言
VB 與 VB.Net
C 與 C#
Java 與 J#
程式設計不分區
資料庫
ORACLE
My SQL
MS SQL
網頁設計
ASP 與 ASP.NET
PHP
PHP+MySQL 入門實作
JavaScript
FLASH / ActionScript
HTM/ HTML/ CSS
網頁設計不分區
電腦與作業系統
電腦各種硬體討論
一般電腦軟體討論
論壇事務
管理公告
投訴反映
新手測試
愛 ‧ 生活
公益佈告欄
生活與感動
[收藏此主題]
[關注此主題的新回復]
[通過 QQ、MSN 分享給朋友]
申請友情鏈接
Facebook粉絲