Improve company productivity with a Business Account.Sign Up

x
?
Solved

Writing a code in access

Posted on 2014-03-05
12
Medium Priority
?
304 Views
Last Modified: 2014-03-12
I am trying to write a code in access for an assignment for my students. There will be two fields:

field1 is where students enter numbers, long numbers possibly 20 numbers long.

They then hit a button
The button will write the number they entered in field one according to a code of 0=q, 1=w, 2=e, 3=r, 4=t, 5=y, 6=u, 7=i, 8=p, 9=a

The result will appear in field 2.

For example.

field1: 453
after hitting the button field two shows: tyr

Thanks!
0
Comment
Question by:cansevin
  • 5
  • 4
  • 2
  • +1
12 Comments
 
LVL 7

Expert Comment

by:COACHMAN99
ID: 39908333
Dim arrayname
  Dim  i As Long, field1 As String, field2 As String
  arrayname = Array("q", "w", "e", "r", "t", "y", "u", "i", "p", "a")
  field1 = "453"
  For i = 0 To Len(field1) - 1
    field2 = field2 + arrayname(i)
  Next
  MsgBox field2
0
 
LVL 41

Expert Comment

by:als315
ID: 39908414
I think sample has errors, but it can be corrected:
Dim arrayname
Dim i As Long, field1 As String, field2 As String
arrayname = Array("q", "w", "e", "r", "t", "y", "u", "i", "p", "a")
field1 = "453"
If IsNumeric(field1) Then
    field2 = ""
    For i = 1 To Len(field1)
        field2 = field2 + arrayname(CInt(Mid(field1, i, 1)))
    Next
    MsgBox field2
Else
    MsgBox "Non-numeric symbols entered: ", field1
End If

Open in new window

0
 
LVL 7

Expert Comment

by:COACHMAN99
ID: 39908712
thanks als315; I wasn't paying attention :-)
0
Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

 
LVL 41

Expert Comment

by:PatHartman
ID: 39910665
Let me start with an apology.  Please don't be offended.  I've been wanting to say this for some time and it looks like you have your answer so I'll just jump in.

Codes are limited lists of values - area codes, zip codes, department codes, etc.  Or an encrypted value.  During WWII, the British captured an enigma machine and with it were able to decipher the codes the Germans used to encrypt their messages.  "A" code is a member of a set of codes so 203 is the area code for most of Western Connecticut or "F" is the value for female in a list of gender codes, or "a" code could be the entire body of the tokens substituted for letters to encrypt a message.  The Germans used a different code for each day of the week.  So on Monday an "a" is coded as "t", on Tuesday it is "c", on Wednesday it is "x", etc.

Code is what a programmer writes. No article, no trailing s to make it plural.  It is singular and plural and never takes the article "a" although it can take the article "the".  We never say "a code" but we do say "the code".   A programmer might create "a" procedure or "a" function or "a" subroutine but he writes code.  Not "a" code, not "codes".  Just code.
0
 

Author Comment

by:cansevin
ID: 39912525
Thanks guys... appreciate your help. I am sure it is my fault, but I can't get it to work properly. It keeps opening of dialogue box with just the "tyr". I would it to take whatever was in the raw1 field and write it in the code for the saved1. Also note... my students may be entering very long numbers, up to 20 digits long. Not sure if this will affect anything. Thanks for all the help! Pat... very interesting, thanks!

I am using the below code for my on click of the button.

Private Sub Command42_Click()

Dim arrayname
Dim i As Long, raw1 As String, saved1 As String
arrayname = Array("q", "w", "e", "r", "t", "y", "u", "i", "p", "a")
raw1 = "453"
If IsNumeric(raw1) Then
    saved1 = ""
    For i = 1 To Len(raw1)
        saved1 = saved1 + arrayname(CInt(Mid(raw1, i, 1)))
    Next
    MsgBox saved1
Else
    MsgBox "Non-numeric symbols entered: ", raw1
End If

Me.fldDateUpdated = Now()

End Sub
0
 
LVL 41

Expert Comment

by:PatHartman
ID: 39912810
The problem was with your last message box.  You needed to concatenate raw1 using the &.
ConvertNum.accdb
0
 

Accepted Solution

by:
cansevin earned 0 total points
ID: 39912861
Pat, thanks! It is working perfect on yours... on mine... when I hit the button, nothing shows up. The date and time stamp changes correctly but nothing shows up. The code I am using is below (I changed my names to txtInput and txtOutput

Private Sub Command42_Click()

Dim arrayname
Dim i As Long
Dim bNumeric As Boolean
arrayname = Array("q", "w", "e", "r", "t", "y", "u", "i", "p", "a")

bNumeric = True
Me.txtOutput = Null
For i = 1 To Len(Me.txtInput)
    If IsNumeric(Mid(Me.txtInput, i, 1)) Then
    Else
        bNumeric = False
        i = Len(Me.txtInput)
    End If
Next
   

If bNumeric Then
    Me.txtOutput = ""
    For i = 1 To Len(Me.txtInput)
        Me.txtOutput = Me.txtOutput + arrayname(CInt(Mid(Me.txtInput, i, 1)))
    Next
Else
    MsgBox "Non-numeric symbols entered: " & Me.txtInput, vbOKOnly
End If

Me.fldDateUpdated = Now()
End Sub
0
 
LVL 41

Expert Comment

by:PatHartman
ID: 39912948
I copied the code and pasted it into the database I sent to you and it works fine.

Does the code compile in your database?

Are you sure you are using the correct control names?
0
 
LVL 41

Expert Comment

by:PatHartman
ID: 39913075
Do you realize that you accepted your own answer?
0
 

Author Comment

by:cansevin
ID: 39913086
That's not good... No clue how I pulled that off. I'll try to fix it.
0
 

Author Closing Comment

by:cansevin
ID: 39922911
Thanks! I am an idiot... the table type of that cell was number. Changed to text and it works perfect. Thanks!

I am now going to post a question for a button what will take it out of the letters and back to numbers. Maybe you can help with it.  Thanks for everything this morning.
0
 
LVL 41

Expert Comment

by:PatHartman
ID: 39923566
You accepted your own answer again.
0

Featured Post

Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Sometimes MS breaks things just for fun... In Access 2003, only the maximum allowable SQL string length could cause problems as you built a recordset. Now, when using string data in a WHERE clause, the 'identifier' maximum is 128 characters. So, …
Audit trails are very important in any system to hold people responsible for certain transactions and hold them to take ownership of their actions. This article is dedicated to all novice "Microsoft Access" developers.
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
Look below the covers at a subform control , and the form that is inside it. Explore properties and see how easy it is to aggregate, get statistics, and synchronize results for your data. A Microsoft Access subform is used to show relevant calcul…

606 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