2012-08-10 61 views
7

Tôi có hộp thả xuống có số tháng được điền. Khi một tháng được chọn, tôi muốn chuyển đổi nó thành số tháng có chức năng có thể thực hiện việc này không?Chuyển đổi tên tháng thành số

Ví dụ: Tháng Chín = 9

Trả lời

30

Một cách khác

Excel Formula

=MONTH(1&A1) 

VBA

Sub Sample() 
    Dim MonthNm As String 
    MonthNm = "September" 
    Debug.Print Month(DateValue("01 " & MonthNm & " 2012")) 
End Sub 

hoặc

Sub Sample() 
    Dim MonthNm As String 
    MonthNm = "September" 
    Debug.Print Application.Evaluate("=MONTH(1&" & Chr(34) & MonthNm & Chr(34) & ")") 
End Sub 

Thay thế

+0

+1 cho một công việc kỹ lưỡng! –

4

Hãy thử này ...

=MONTH(DATEVALUE(A1&"1")) 

đâu A1 tế bào chứa tên tháng.

+1

+ 1 Đối với công thức Excel :) –

+0

Hôm qua tôi đã xem hồ sơ của bạn và khi tôi thấy câu hỏi này tôi chắc chắn bạn sẽ là người đầu tiên trả lời ... nhưng khi không được trả lời; Tôi nghĩ hãy để tôi thử. cảm ơn!! – SiB

+0

Tôi đã biết câu trả lời nhưng muốn kiểm tra tất cả ba trước khi tôi đăng (Một thói quen kỳ lạ tôi phải nói) :) –

0
Sub month() 

Dim monthh As Integer 

monthh = month(Date) 

MsgBox monthh 

End Sub 

dùng thử.

0

khác công thức excel nơi A1 là id di động với tên tháng:

=TEXT(DATEVALUE(A1&" 1"), "m") 
0

Giải pháp này không làm việc cho tôi (Excel 2010), tôi đã phải rút ngắn tên tháng đến 3 ký tự và thêm số ngày ở phía trước của chuỗi được rút ngắn.

=MONTH(1&LEFT(A1;3)) 
Các vấn đề liên quan