|
发表于 15-9-2010 03:42 PM
|
显示全部楼层
请问。。。这应该怎样运用?需要"="吗?
Felix2212 发表于 15-9-2010 02:00 PM
不用,那些code放在VBA,然后在 Excel B2 那边输入1,2,3,4 就会出现mcd,kfc 了。。。。 |
|
|
|
|
|
|
|
发表于 17-9-2010 12:39 PM
|
显示全部楼层
以下是Visual Basic,自动从300.20 转去英文 :Three Hundred Dollars and Twenty Cents
请问如何把它改 ...
vrz 发表于 15-9-2010 07:46 AM
改了,如下。。。
不过有几个数目的翻译觉得怪怪的。。。
你试试看,尤其是几分几毛的,你来comments,我再改。。。
- Option Explicit
- 'Main Function
- Function SpellNumber(ByVal MyNumber)
- Dim Dollars, Cents, Temp
- Dim DecimalPlace, Count
- ReDim Place(9) As String
- Place(2) = " Thousand "
- Place(3) = " Million "
- Place(4) = " Billion "
- Place(5) = " Trillion "
- ' String representation of amount.
- MyNumber = Trim(Str(MyNumber))
- ' Position of decimal place 0 if none.
- DecimalPlace = InStr(MyNumber, ".")
- ' Convert cents and set MyNumber to dollar amount.
- If DecimalPlace > 0 Then
- Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _
- "00", 2))
- MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
- End If
- Count = 1
- Do While MyNumber <> ""
- Temp = GetHundreds(Right(MyNumber, 3))
- If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
- If Len(MyNumber) > 3 Then
- MyNumber = Left(MyNumber, Len(MyNumber) - 3)
- Else
- MyNumber = ""
- End If
- Count = Count + 1
- Loop
- Select Case Dollars
- Case ""
- Dollars = "No Ringgit Malaysia"
- Case "One"
- Dollars = "One Ringgit Malaysia"
- Case Else
- Dollars = "Ringgit Malaysia : " & Dollars
- End Select
- Select Case Cents
- Case ""
- Cents = " Only"
- Case "One"
- Cents = " and Cent One Only"
- Case Else
- Cents = " and Cents " & Cents & " Only"
- End Select
- SpellNumber = Dollars & Cents
- End Function
-
- ' Converts a number from 100-999 into text
- Function GetHundreds(ByVal MyNumber)
- Dim Result As String
- If Val(MyNumber) = 0 Then Exit Function
- MyNumber = Right("000" & MyNumber, 3)
- ' Convert the hundreds place.
- If Mid(MyNumber, 1, 1) <> "0" Then
- Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
- End If
- ' Convert the tens and ones place.
- If Mid(MyNumber, 2, 1) <> "0" Then
- Result = Result & GetTens(Mid(MyNumber, 2))
- Else
- Result = Result & GetDigit(Mid(MyNumber, 3))
- End If
- GetHundreds = Result
- End Function
-
- ' Converts a number from 10 to 99 into text.
- Function GetTens(TensText)
- Dim Result As String
- Result = "" ' Null out the temporary function value.
- If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
- Select Case Val(TensText)
- Case 10: Result = "Ten"
- Case 11: Result = "Eleven"
- Case 12: Result = "Twelve"
- Case 13: Result = "Thirteen"
- Case 14: Result = "Fourteen"
- Case 15: Result = "Fifteen"
- Case 16: Result = "Sixteen"
- Case 17: Result = "Seventeen"
- Case 18: Result = "Eighteen"
- Case 19: Result = "Nineteen"
- Case Else
- End Select
- Else ' If value between 20-99...
- Select Case Val(Left(TensText, 1))
- Case 2: Result = "Twenty "
- Case 3: Result = "Thirty "
- Case 4: Result = "Forty "
- Case 5: Result = "Fifty "
- Case 6: Result = "Sixty "
- Case 7: Result = "Seventy "
- Case 8: Result = "Eighty "
- Case 9: Result = "Ninety "
- Case Else
- End Select
- Result = Result & GetDigit _
- (Right(TensText, 1)) ' Retrieve ones place.
- End If
- GetTens = Result
- End Function
-
- ' Converts a number from 1 to 9 into text.
- Function GetDigit(Digit)
- Select Case Val(Digit)
- Case 1: GetDigit = "One"
- Case 2: GetDigit = "Two"
- Case 3: GetDigit = "Three"
- Case 4: GetDigit = "Four"
- Case 5: GetDigit = "Five"
- Case 6: GetDigit = "Six"
- Case 7: GetDigit = "Seven"
- Case 8: GetDigit = "Eight"
- Case 9: GetDigit = "Nine"
- Case Else: GetDigit = ""
- End Select
- End Function
-
复制代码 |
|
|
|
|
|
|
|
发表于 17-9-2010 12:41 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 17-9-2010 04:13 PM
|
显示全部楼层
回复 23# kiam06
谢谢你的关注和协助。
但是出现以下error :
|
|
|
|
|
|
|
|
发表于 17-9-2010 04:30 PM
|
显示全部楼层
你确定??
如果你的数目放在A1的话,那么在需要翻译的cells放 =SpellNumber(A1)
kiam06 发表于 17-9-2010 12:41 PM
你试了不能吗? |
|
|
|
|
|
|
|
发表于 17-9-2010 04:42 PM
|
显示全部楼层
回复 kiam06
谢谢你的关注和协助。
但是出现以下error :
vrz 发表于 17-9-2010 04:13 PM
再试过了,没问题。。。
怎么你会跑error出来了???
是因为试了什么号码吗?
会不会是没有copy完全部的代码?? |
|
|
|
|
|
|
|
发表于 17-9-2010 04:50 PM
|
显示全部楼层
回复 27# kiam06
刚才我是highlight all,copy & paste,不能。
现在我直接按【复制代码】paste 就可以了。完美!
万分谢意! |
|
|
|
|
|
|
|
发表于 18-9-2010 10:43 AM
|
显示全部楼层
不用,那些code放在VBA,然后在 Excel B2 那边输入1,2,3,4 就会出现mcd,kfc 了。。。。
羁 发表于 15-9-2010 03:42 PM
谢谢,这用得到。。。
你确定??
如果你的数目放在A1的话,那么在需要翻译的cells放 =SpellNumber(A1)
kiam06 发表于 17-9-2010 12:41 PM
这个。。。小弟尝试以上两组。。。暂时还没看到任何翻译哦。。。
可以再详细指教吗?谢谢~ |
|
|
|
|
|
|
|
发表于 6-11-2010 02:56 PM
|
显示全部楼层
本帖最后由 发糕 于 6-11-2010 08:56 PM 编辑
請問要如何用 VBA 实现打印设置-月份 Sub rr()
With Sheets(1).PageSetup
.Orientation = xlLandscape
.LeftMargin = Application.CentimetersToPoints(0.5)
.RightMargin = Application.CentimetersToPoints(0.5)
.TopMargin = Application.CentimetersToPoints(0.5)
.BottomMargin = Application.CentimetersToPoints(0.5)
.LeftHeader = "To: Date:" & Date 要如何換成-月份(NOVEMBER)
End With
End Sub
|
|
|
|
|
|
|
|
发表于 11-11-2010 05:55 PM
|
显示全部楼层
請問要如何用 VBA 实现打印设置-月份 Sub rr()
With Sheets(1).PageSetup
.Orientation = xlLa ...
发糕 发表于 6-11-2010 02:56 PM
.LeftHeader = "To: Date:" & Format(Date, "mmmm") |
|
|
|
|
|
|
|
发表于 11-11-2010 07:24 PM
|
显示全部楼层
本帖最后由 发糕 于 11-11-2010 07:27 PM 编辑
回复 30# kiam06
Thank You Very Much!!!!!!!!!!!
以後有什麼疑難雜症可不可以再找你幫忙? |
|
|
|
|
|
|
|
发表于 20-12-2010 11:09 PM
|
显示全部楼层
请问各位高人,请帮小弟解决一下Excel的疑难!
如果我想把:
A1*B1的value target 去C1,条件是target value must be rounded-up figure,比如C1=0.789 to 1, C1= 1.1 to 2, or C1= 101.01 to 102.
我应该在C1用IF statement,该怎么coding呢? |
|
|
|
|
|
|
|
发表于 22-12-2010 12:27 AM
|
显示全部楼层
回复 30# kiam06
你好!
请教,我想用Excel 制成 一个表格,
比如:
学生
在 科目list
选择 华语
选择 第5课
选择/ 填写 第几页
3个月后,我可以sort 日期 和 列出 三个月来 华语科目 的 相关记录。
请问,用excel 是否可以做这类的记录?可行吗?
请多多指教,谢谢! |
|
|
|
|
|
|
|
发表于 22-12-2010 08:00 AM
|
显示全部楼层
请问各位高人,请帮小弟解决一下Excel的疑难!
如果我想把:
A1*B1的value target 去C1,条件是target val ...
Zach4ry 发表于 20-12-2010 11:09 PM
C1=ROUNDUP(A1+B1,0) |
|
|
|
|
|
|
|
发表于 22-12-2010 08:06 AM
|
显示全部楼层
回复 kiam06
你好!
请教,我想用Excel 制成 一个表格,
比如:
学生
在 科目list
选择 华语
...
YianYian 发表于 22-12-2010 12:27 AM
可以。。。
不过日期需要正确的格式,基本上windows默认的格式为美式,月/日/年。。。
关于这类问题,建议多多亲自试验/研究。。。
遇到瓶颈问题才上来求救。。。 |
|
|
|
|
|
|
|
发表于 22-12-2010 09:31 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 29-12-2010 02:05 PM
|
显示全部楼层
各位大哥好。。。小弟最近想简化作业上的程序。。。问了很多同事。。他们都不懂excel比较advance的运作。。听说cari有很多专才。。所以冒昧在此求救。。。希望各位大哥能帮个忙:
本人想简化quotation上的程序。。就是说想把客户的资料从一份worksheet (customerlist.xls)link去quotation(quotation.xls)上。。。
existing我得做法是在customer.xls上把客户的资料copy & paste去quotation上。。超麻烦。。
我记得以前我在旧公司是。。只需要在quotation上某一个cell(比如quotation.xls的cell A19)上填上代号(比如说:在customerlist.xls上 cari.com的代号是C100,就直接在A19填上C100)那在customer information那一部分就会自动出现了。。
简化:
Woork book worksheet cell(代号) company name
======== ======= === ==========
customerlist.xls sheet1 A1(C100) Cari.com sdn bhd
quotation.xls sheet1 A19(C100) 自动出现company name
有谁能帮小弟吗???谢谢!!! |
|
|
|
|
|
|
|
发表于 15-2-2011 11:47 AM
|
显示全部楼层
MID 的用法:=MID(text, start_num, num_chars)
start_num: 第几个开始的数目
num_chars: 字的数目
...
超级飞毛腿 发表于 25-6-2010 02:23 PM
这招有效,谢谢侬! |
|
|
|
|
|
|
|
发表于 15-2-2011 11:50 PM
|
显示全部楼层
这招有效,谢谢侬!
joel0712 发表于 15-2-2011 11:47 AM
不用客气。。。 |
|
|
|
|
|
|
|
发表于 15-2-2011 11:54 PM
|
显示全部楼层
各位大哥好。。。小弟最近想简化作业上的程序。。。问了很多同事。。他们都不懂excel比较advance的运作。。 ...
alex_cheong 发表于 29-12-2010 02:05 PM
可以试试用 vlookup 的方程式来做看。 不过 ,两个file 需要同一个时间开着才有效。
你也可以试试用 Index 和 Match 的方程式。 |
|
|
|
|
|
|
| |
本周最热论坛帖子
|