如何在手机号码和出生日期少于10的情况下添加前导零

时间:2014-05-08 11:57:13

标签: excel vba

我一直在处理我的脚本问题,无法弄清楚如何在手机号码中添加前导零和小于10的天数。

此脚本从excel电子表格中获取值并将它们放入在线表单中,但我必须在我不想要的那一刻手动添加零。

我已经尝试更改电子表格以添加零无效,所以我想知道在这个脚本中我是否可以做任何事情来添加它们呢?

这是我正在使用的脚本(用WinTask录制):

Dim title$(100)
Dim name$(100)
Dim surname$(100)
Dim postcode$(100)
Dim number$(100)
Dim email$(100)
Dim Ts$(100)
Dim Flatno$(100)
Dim Houseno$(100)
Dim Street$(100)
Dim Locality$(100)
Dim Town$(100)
Dim County$(100)
Dim Dpostcode$(100)
Dim Company$(100)
Dim DHouseno$(100)
Dim Dstreet$(100)
Dim Dlocality$(100)
Dim Dtown$(100)
Dim Dcounty$(100)
Dim dd$(100)
Dim mm$(100)
Dim yyyy$(100)
Dim cardname$(100)
Dim cardtype$(100)
Dim cardno$(100)
Dim securityno$(100)
Dim expmm$(100)
Dim expyyyy$(100)
Dim manufacturer$(100)
Dim Handset$
Dim Price$(100)
Dim tariff$(100)


ReadExcel("datadel.xlsx","R2:R90", title$())
ReadExcel("datadel.xlsx","S2:S90", name$())
ReadExcel("datadel.xlsx","T2:T90", surname$())
ReadExcel("datadel.xlsx","Y2:Y90", postcode$())
ReadExcel("datadel.xlsx","D2:D90", number$())
ReadExcel("datadel.xlsx","U2:U90", email$())
ReadExcel("datadel.xlsx","AG2:AG90", Ts$())
ReadExcel("datadel.xlsx","Z2:Z90", Flatno$())
ReadExcel("datadel.xlsx","AA2:AA90", Houseno$())
ReadExcel("datadel.xlsx","AB2:AB90", Street$())  
ReadExcel("datadel.xlsx","AC2:AC90", Locality$())
ReadExcel("datadel.xlsx","AD2:AD90", Town$())
ReadExcel("datadel.xlsx","AE2:AE90", County$())
ReadExcel("datadel.xlsx","AH2:AH90", Dpostcode$())
ReadExcel("datadel.xlsx","AI2:AI90", Company$())
ReadExcel("datadel.xlsx","AJ2:AJ90", Dhouseno$())
ReadExcel("datadel.xlsx","AK2:AK90", Dstreet$())
ReadExcel("datadel.xlsx","AL2:AL90", Dlocality$())
ReadExcel("datadel.xlsx","AM2:AM90", Dtown$())
ReadExcel("datadel.xlsx","AN2:AN90", Dcounty$())
ReadExcel("datadel.xlsx","V2:V90", dd$())
ReadExcel("datadel.xlsx","W2:W90", mm$())
ReadExcel("datadel.xlsx","X2:X90", yyyy$())
ReadExcel("datadel.xlsx","AF12", cardname$())
ReadExcel("datadel.xlsx","AG12", cardtype$())
ReadExcel("datadel.xlsx","AH2", cardno$())
ReadExcel("datadel.xlsx","AI2", securityno$())
ReadExcel("datadel.xlsx","AJ2", expmm$())
ReadExcel("datadel.xlsx","AK2", expyyyy$())
ReadExcel("datadel.xlsx","F2:F90", manufacturer$())
ReadExcel("datadel.xlsx","BD2:BD90", handset$())
ReadExcel("datadel.xlsx","E2:E90", price$())
ReadExcel("datadel.xlsx","BE2:BE90", tariff$())

#Actiontimeout=60

i=0
repeat

StartBrowser("IE", "[blank]", 3)

UsePage("Order Management Login")
WriteHTML("INPUT TEXT[NAME= 'User[username]']", "[blank]")
WriteHTML("INPUT PASSWORD[NAME= 'User[password]']", "[blank]")
ClickHTMLElement("INPUT SUBMIT[VALUE= 'Login']")

UsePage("Affiliate Login Area")
pause 2 secs
ClickHTMLElement("A[INNERTEXT= 'Sales Portal']")


UsePage("Sales Portal")
pause 2 secs
WriteHTML("INPUT TEXT[NAME= 'productUrlName']", manufacturer$(i))
pause 2 secs
ClickHTMLElement(handset$(i))
pause 2 secs
WriteHTML("INPUT TEXT[NAME= 'tariffCode']", price$(i))
pause 2 secs
ClickHTMLElement(tariff$(i))
pause 2 secs
ClickHTMLElement("A[INNERTEXT= 'BUY']")

UsePage("[blank]")
ClickHTMLElement("INPUT IMAGE[SRC= 'https://media.secure']")
SelectHTMLItem("SELECT[NAME= 'personal_title']", title$(i))
WriteHTML("INPUT TEXT[NAME= 'personal_first_name']", name$(i))
WriteHTML("INPUT TEXT[NAME= 'personal_last_name']", surname$(i))
WriteHTML("INPUT TEXT[NAME= 'address_postcode']", postcode$(i))
WriteHTML("INPUT TEXT[NAME= 'personal_phone_dayti']", number$(i))
WriteHTML("INPUT TEXT[NAME= 'personal_phone_eveni']", number$(i))
WriteHTML("INPUT TEXT[NAME= 'personal_email']", email$(i))

SelectHTMLItem("SELECT[NAME= 'personal_date_of_bir']", dd$(i))
SelectHTMLItem("SELECT[NAME= 'personal_date_of_birth_m']", mm$(i))
SelectHTMLItem("SELECT[NAME= 'personal_date_of_birth_y']", yyyy$(i))
ClickHTMLElement("DIV[OUTERTEXT= 'If you do not wish to be contacted with our   latest offers then please check the box.']")
WriteHTML("INPUT TEXT[NAME= 'personal_existing_nu']", number$(i))
WriteHTML("INPUT TEXT[NAME= 'promo']", ts$(i))
WriteHTML("INPUT TEXT[NAME= 'address_flat']", flatno$(i))
WriteHTML("INPUT TEXT[NAME= 'address_house_number']", Houseno$(i))
WriteHTML("INPUT TEXT[NAME= 'address_street']", Street$(i))
WriteHTML("INPUT TEXT[NAME= 'address_locality']", Locality$(i))
WriteHTML("INPUT TEXT[NAME= 'address_town']", Town$(i))
WriteHTML("INPUT TEXT[NAME= 'address_county']", County$(i))


ClickHTMLElement("INPUT CHECKBOX[NAME= 'delivery_preferred']")

WriteHTML("INPUT TEXT[NAME= 'work_number']", number$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_postcode']", Dpostcode$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_flat']", Company$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_house_numbe']", DHouseno$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_street']", Dstreet$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_locality']", Dlocality$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_town']", Dtown$(i))
WriteHTML("INPUT TEXT[NAME= 'delivery_county']", Dcounty$(i))


ClickHTMLElement("INPUT IMAGE[SRC= '[blank]',INDEX='2']")

ClickHTMLElement("A[HREF= '[blank]',INDEX='2']")

pause 4 secs


closebrowser()

i=i+1
until manufacturer$(i)=""

2 个答案:

答案 0 :(得分:0)

您可以使用Format功能,例如英文手机号码:

Format(strNumber, "00000 000 000")

相同的功能可用于其他数字的前导0:

Format(intDays, "00")

请参阅:http://msdn.microsoft.com/en-us/library/office/gg251755(v=office.15).aspx

答案 1 :(得分:0)

当我想要前导零时,我使用String(,)和Right $的组合。请参阅此示例。

Sub T()

    Dim number As Long

    number = 10

    Const lLeadingZeroes As Long = 5

    Dim sLeadingZeros As String
    sLeadingZeros = Right$(String(lLeadingZeroes, "0") & CStr(number), lLeadingZeroes)

    Debug.Print sLeadingZeros


End Sub