[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

VBA EXCEL - If only 3 digit in a cell add a 0 in the the start

Posted on 2016-08-09
4
Medium Priority
?
88 Views
Last Modified: 2016-08-09
Hi Guys,

I got code block! so please help/advise

I have a cell that does a vlookup from another sheet and paste the value, but sadly the source is text formatet and is shown correctly and like this 0889 but after the paste of value its only 889 is there a way to change this?

I have done the formatting and that works but when i need to use the cell for other formulas where it 0889 is need it only uses the 3 digits ( 889 )

so i need to insert a 0 in the front if there is only 3 digits..


please advise

ps. sorry if this is confusing.

here is the code:
Sub Get_regnr_byuser()

    Dim username As String
    Dim regnr As String
    Dim system As String
    
    On Error GoTo Errmsg:
    
    'username = Range("user")
    username = Worksheets("Admin").Range("user").Value
    system = Worksheets("Admin").Range("System").Value
    
    
If Left(username, 3) = "b37" Then

    ' FIT

    'Set myrange = Worksheets("Medarbejder_Liste").Range("E:G")
     Set myrange = Range("Medarbejder_Liste!E:G")

    regnr = Application.WorksheetFunction.VLookup(username, myrange, 3, False)

Else

    ' HITS
    
    'Set myrange = Worksheets("Medarbejder_Liste").Range("D:G")
    Set myrange = Range("Medarbejder_Liste!D:G")
      
    regnr = Application.WorksheetFunction.VLookup(username, myrange, 4, False)
    

End If
    
    Worksheets("Admin").Range("reg").Value = regnr
    'Worksheets("Admin").Range("reg").NumberFormat = "0####" 'This formats the cell
    
    If regnr = "" Then
        GoTo Errmsg
    End If
    
    Exit Sub
    
Errmsg:


    Call err_exit
    

End Sub

Open in new window

0
Comment
Question by:Hakum
  • 2
4 Comments
 
LVL 34

Assisted Solution

by:Rob Henson
Rob Henson earned 1000 total points
ID: 41748878
When referring to a cell containing the 3 digits use the TEXT function to make it 4 digits:

=TEXT(A2,"0000")

Thanks
Rob
0
 
LVL 33

Accepted Solution

by:
Subodh Tiwari (Neeraj) earned 1000 total points
ID: 41748883
Please try this.....

Worksheets("Admin").Range("reg").NumberFormat = "@"
Worksheets("Admin").Range("reg").Value = regnr

Open in new window

0
 
LVL 1

Author Closing Comment

by:Hakum
ID: 41748888
Thank alot guys!!!! works like a charm Neeraj!
0
 
LVL 33

Expert Comment

by:Subodh Tiwari (Neeraj)
ID: 41749040
You're welcome Hakum! Glad to help.
And thanks for the feedback.
0

Featured Post

Configuration Guide and Best Practices

Read the guide to learn how to orchestrate Data ONTAP, create application-consistent backups and enable fast recovery from NetApp storage snapshots. Version 9.5 also contains performance and scalability enhancements to meet the needs of the largest enterprise environments.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Ever wonder what it's like to get hit by ransomware? "Tom" gives you all the dirty details first-hand – and conveys the hard lessons his company learned in the aftermath.
Explore the ways to Unlock VBA Project Password Excel 2010 & 2013 documents. Go through the article and perform the steps carefully to remove VBA Excel .xls file.
This Micro Tutorial will demonstrate how to use a scrolling table in Microsoft Excel using the INDEX function.
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question