Solved

Merge

Posted on 2009-06-30
2
307 Views
Last Modified: 2013-11-25
How to correct the code below wherein I want to merge  the two field in one table?
'Class mudule
Public Function Merged(ProCode As String) As String
Dim Merge(1 To 2) As String
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim sql As String
Set rs = New ADODB.Recordset
    sql = "select Top 1 Tag_Name,  Quantity from STOCK where PROCODE='" & ProCode & "'"
    rs.LockType = adLockOptimistic
    rs.CursorType = adOpenKeyset
    rs.Open sql, cn
    With rs
        If .BOF = True And _
            .EOF = True Then
            Merge(1) = ""
            Merge(2) = (0)
        Else
            Merge(1) = !Tag_Name & ""
            Merge(2) = !Quantity
        End If
        .Close
    End With
    Set rs = Nothing
End Function
 
'Form
Public Sub Tag1()
Dim s As Labeler
Set s = New Labeler
s.OPEN_CON "mydb", ""
Dim j As SSCommand
For Each j In cmd1
    j.Caption = s.Merge(1)(j.Index) & vbNewLine & s.Merge(2)(j.Index)
Next
s.CLOSE_CON
Set s = Nothing
End Sub

Open in new window

0
Comment
Question by:Whing Dela Cruz
2 Comments
 
LVL 70

Accepted Solution

by:
Éric Moreau earned 500 total points
ID: 24750654
I really don't know what you are asking for. It is not really clear again!

One thing for sure is that Merge is a variable local to the Merged Function so it cannot be accessed outside it (and you try to do just that.

could you try this:

'Class mudule
PUBLIC Merge(1 To 2) As String
 
Public sub Merged(ProCode As String) 
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim sql As String
Set rs = New ADODB.Recordset
    sql = "select Top 1 Tag_Name,  Quantity from STOCK where PROCODE='" & ProCode & "'"
    rs.LockType = adLockOptimistic
    rs.CursorType = adOpenKeyset
    rs.Open sql, cn
    With rs
        If .BOF = True And _
            .EOF = True Then
            Merge(1) = ""
            Merge(2) = (0)
        Else
            Merge(1) = !Tag_Name & ""
            Merge(2) = !Quantity
        End If
        .Close
    End With
    Set rs = Nothing
End sub
 
'Form
Public Sub Tag1()
Dim s As Labeler
Set s = New Labeler
s.OPEN_CON "mydb", ""
Dim j As SSCommand
For Each j In cmd1
    call s.Merged(j.Index)
    j.Caption = s.Merge(1) & vbNewLine & s.Merge(2)
Next
s.CLOSE_CON
Set s = Nothing
End Sub

Open in new window

0
 

Author Closing Comment

by:Whing Dela Cruz
ID: 31598483
Thank you sir, Through this idea i was able to solve the problem..
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Introduction I needed to skip over some file processing within a For...Next loop in some old production code and wished that VB (classic) had a statement that would drop down to the end of the current iteration, bypassing the statements that were c…
When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

856 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