註冊
登錄
首頁
論壇版規
禁止列表
說明
地圖
數位書香
私人消息 (0)
公共消息 (0)
論壇任務 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
麻辣家族討論版版
»
Excel程式區
» 可以幫我解一下嗎???3Q
返回列表
下一主題
上一主題
發帖
可以幫我解一下嗎???3Q
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4204 小時
註冊時間
2010-4-30
最後登錄
2026-7-16
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2026-7-16
1
#
跳轉到
»
發表於 2010-8-16 23:29
|
顯示全部帖子
試試看
Sub nn()
r = 2: yn = 1
Do Until r > [B65536].End(xlUp).Row
Do While Cells(r, 2) * yn > 0 Or Abs(Cells(r, 2)) < 5
r = r + 1
Loop
Set x = Cells(r, 1)
Do While Cells(r, 2) * yn < 0 And Cells(r, 2) * yn < Cells(r - 1, 2) * yn
r = r + 1
Loop
Set y = Cells(r, 1)
x.Offset(, 2) = (x - y) * yn
yn = yn * -1
Loop
End Sub
複製代碼
學海無涯_不恥下問
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4204 小時
註冊時間
2010-4-30
最後登錄
2026-7-16
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2026-7-16
2
#
發表於 2010-8-17 00:29
|
顯示全部帖子
回復
3#
color790
B19跟B24絕對值是小於5阿
其中只是yn變數用來反轉正負值
這樣你去比較不同處應該可以明瞭
Sub nn()
r = 2: yn = 1
Do Until r > [B65536].End(xlUp).Row
Do While Cells(r, 2) * yn > 0 'Or Abs(Cells(r, 2)) < 5
r = r + 1
Loop
Set x = Cells(r, 1)
Do While Cells(r, 2) * yn < 0 And Cells(r, 2) * yn < Cells(r - 1, 2) * yn
r = r + 1
Loop
Set y = Cells(r, 1)
x.Offset(, 2) = (x - y) * yn
yn = yn * -1
Loop
End Sub
複製代碼
學海無涯_不恥下問
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4204 小時
註冊時間
2010-4-30
最後登錄
2026-7-16
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2026-7-16
3
#
發表於 2010-8-18 00:08
|
顯示全部帖子
回復
5#
color790
Sub nn()
r = 2: yn = 1
Do Until r > [B65536].End(xlUp).Row
Do While Cells(r, 2) * yn > 0 Or Abs(Cells(r, 2) - Val(Cells(r - 1, 2))) < 5
r = r + 1
Loop
Set x = Cells(r, 1)
Do While Cells(r, 2) * yn < 0 And Cells(r, 2) * yn < Cells(r - 1, 2) * yn
r = r + 1
Loop
Set y = Cells(r, 1)
x.Offset(, 2) = (x - y) * yn
yn = yn * -1
Loop
End Sub
複製代碼
學海無涯_不恥下問
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4204 小時
註冊時間
2010-4-30
最後登錄
2026-7-16
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
142
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2026-7-16
4
#
發表於 2010-8-18 16:23
|
顯示全部帖子
1.用Val是避免儲存格為文字造成錯誤
2.用or 跟寫<5,那是要不成立的狀況
學海無涯_不恥下問
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粉絲