註冊
登錄
首頁
論壇版規
禁止列表
說明
地圖
數位書香
私人消息 (0)
公共消息 (0)
論壇任務 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
麻辣家族討論版版
»
Excel程式區
» "Vlookup" and "Match" in VBA
返回列表
下一主題
上一主題
發帖
"Vlookup" and "Match" in VBA
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4138 小時
註冊時間
2010-4-30
最後登錄
2025-5-19
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2025-5-19
1
#
跳轉到
»
發表於 2011-6-25 18:26
|
顯示全部帖子
本帖最後由 Hsieh 於 2011-6-25 18:51 編輯
回復
19#
am0251
x = Application.Match(ItemName, Sheet2.["A1", "A" & myRowCount], 0)
這是錯誤語法,改為
x = Application.Match(ItemName, Sheet2.Rnage("A1:A" & myRowCount), 0)
日期在工作表內被視為Double資料型態
所以應宣告為
Dim ShipDate As Double
這樣你的y值才會找的到
學海無涯_不恥下問
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4138 小時
註冊時間
2010-4-30
最後登錄
2025-5-19
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2025-5-19
2
#
發表於 2011-6-26 22:52
|
顯示全部帖子
本帖最後由 Hsieh 於 2011-6-26 22:54 編輯
回復
21#
am0251
既然已經宣告成DOUBLE型態
ShipDate = Format(Calendar1.Value, "d-mmm-yy")
這樣又轉成了字串,當然型態不符
直接ShipDate =Calendar1.Value
只針對語法解釋,其他不了解你的目的是甚麼?無法給你任何意見
學海無涯_不恥下問
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4138 小時
註冊時間
2010-4-30
最後登錄
2025-5-19
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2025-5-19
3
#
發表於 2011-6-28 10:06
|
顯示全部帖子
回復
23#
am0251
Private Sub Start_Click()
Dim mydate#
mydate = Calendar1.Value
Set d = CreateObject("Scripting.Dictionary")
With Sheet1
sh = .[E1] '工作表名稱
For Each a In .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp))
d(a.Value) = a.Offset(, 1).Value
Next
With Sheets(sh)
k = Application.Match(mydate, .Rows(1), 0)
If IsError(k) Then MsgBox "The day is not find!": Exit Sub
For Each a In .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp))
.Cells(a.Row, k) = d(a.Value)
Next
End With
End With
Unload Me
MsgBox "Done"
End Sub
複製代碼
學海無涯_不恥下問
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4138 小時
註冊時間
2010-4-30
最後登錄
2025-5-19
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
121
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2025-5-19
4
#
發表於 2011-6-28 14:22
|
顯示全部帖子
.Cells(a.Row, k) = .Cells(a.Row, k) +d(a.Value)
學海無涯_不恥下問
TOP
靜思自在 :
真正的愛心,是照顧好自己的這顆心。
返回列表
下一主題
上一主題
Excelㄧ般區
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粉絲