Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Visual Basic 6 i VBA Pomoc

[es] :: Access :: Visual Basic 6 i VBA Pomoc

[ Pregleda: 1542 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MAshUP

Član broj: 261854
Poruke: 16
*.dynamic.isp.telekom.rs.



Profil

icon Visual Basic 6 i VBA Pomoc22.12.2010. u 20:46 - pre 163 meseci
Dobro vece

Imam napravljenu bazu podataka Microsof Accessu 2003 i zelim da vrsim upis u tu bazu pomocu VBA projekta (koda). Navedeni kod radi perfektno u VB6 ali kada ga prebacim u VBA, dobijam gresku( Error 91, (Object Variable or With Block not set)). Sve komponente su povezane kao i u VB6. Koristim microsoft ADO data control u VBA i u VB6... Ne znam gde gresim... Pa ako moze mala pomoc, da ispravim navedebu gresku. Hvala

p.s ukoliko je tema na pogresnom mestu, izvinjavam se administratoru i molim da je prebaci u odgovarjuci deo

Code:
Private Sub cmdAdd_Click()
txtrfidID = ""
    txtIme = ""
    txtPrezime = ""
    txtOperacija = ""
    txtRadni_Dan = ""
    cmbpozicija = ""
    txtDatum = ""
    txtKomentar = ""
    
  
    cmdFind.Enabled = False
    cmdDelete.Enabled = False

    cmdSave.Enabled = True
    
    txtrfidID.Enabled = True
    txtIme.Enabled = True
    txtPrezime.Enabled = True
    txtOperacija.Enabled = True
    txtRadni_Dan.Enabled = True
    cmbpozicija.Enabled = True
    txtDatum.Enabled = True
    txtKomentar.Enabled = True
    
    txtrfidID.BackColor = &H80000005     ' siva boja
    txtIme.BackColor = &H80000005
    txtPrezime.BackColor = &H80000005
    txtOperacija.BackColor = &H80000005
    txtRadni_Dan.BackColor = &H80000005
    cmbpozicija.BackColor = &H80000005
    txtKomentar.BackColor = &H80000005
    txtDatum.BackColor = &H80000005
    
    cmdADD.Enabled = False

End Sub

Private Sub cmdDelete_Click()
Dim tempiraj As Integer

If txtRadni_Dan = "" Then
    MsgBox "Niste izabrali podatke koje zelite da izbrisete!", , "Obavestenje"
    Exit Sub
End If
adoData.Refresh
If (adoData.Recordset.EOF = True) Then
    MsgBox "Baza je prazna!", , "Obavestenje"
    Exit Sub
End If
        adoData.Refresh
        adoData.Recordset.MoveFirst  ' pomeranje prvog
        Do Until (adoData.Recordset.EOF) ' do kraja baze
            tempiraj = adoData.Recordset.Fields(0).Value  ' u tempiraj stavljamo indeks koji zelimo da izbrisemo
            If (txtRadni_Dan = tempiraj) Then
                Exit Do  ' izlazak iz petlje
            End If
            adoData.Recordset.MoveNext ' pomeranje sledeceg
        Loop
On Error GoTo fer
    adoData.Recordset.Delete  ' brisanje zeljenog indeksa
    MsgBox "Sudent je izbrisan iz baze", , "Obavestenje"
    adoData.Recordset.MovePrevious
    If (adoData.Recordset.EOF = True) Then
        adoData.Recordset.MoveFirst  ' pomeranje prvog
    txtrfidID = ""
    txtIme = ""
    txtPrezime = ""
    txtOperacija = ""
    txtRadni_Dan = ""
    cmbpozicija = ""
    txtDatum = ""
    txtKomentar = ""
    End If
    txtRadni_Dan = adoData.Recordset.Fields(0).Value
    txtrfidID = adoData.Recordset.Fields(1).Value
    txtIme = adoData.Recordset.Fields(2).Value
    txtPrezime = adoData.Recordset.Fields(3).Value
    txtOperacija = adoData.Recordset.Fields(4).Value
    txtKomentar = adoData.Recordset.Fields(5).Value
    cmbpozicija = adoData.Recordset.Fields(6).Value
    txtDatum = adoData.Recordset.Fields(7).Value
    Exit Sub
fer:
    MsgBox "Greska: podaci nisu izbrisani iz baze!"
End Sub

Private Sub cmdExit_Click()
    Unload Me
End Sub

Private Sub cmdFind_Click()
Dim ulaz As Integer
Dim info As String

'On Error GoTo hell

  
If (adoData.Caption <> "") Then

    If adoData.BOFAction = False Then

    ulaz = InputBox("Unesite ID kartice:", "Unos")
    
        If ulaz <> " 0 " Then
             If (InStr(ulaz, "\") Or InStr(ulaz, "/") Or InStr(ulaz, ":") Or InStr(ulaz, "*") Or InStr(ulaz, "?") Or InStr(ulaz, "<") Or InStr(ulaz, ">") Or InStr(ulaz, "|") Or InStr(ulaz, Chr(34))) = 0 Then
               adoData.Recordset.MoveFirst
                    Do While Not adoData.Recordset.EOF
             
                        If adoData.Recordset.Fields(1) = ulaz Then
                            
                            'List1.AddItem Data1.Recordset.Fields(0).Value
                            frmPretraga.List1.AddItem "Kartica_ID:"
                            frmPretraga.List1.AddItem adoData.Recordset.Fields(1).Value
                            'List1.AddItem Data1.Recordset.Fields(2).Value
                            'List1.AddItem Data1.Recordset.Fields(3).Value
                            frmPretraga.List1.AddItem "Operacija:"
                            frmPretraga.List1.AddItem adoData.Recordset.Fields(4).Value
                            frmPretraga.List1.AddItem "Komentar:"
                            frmPretraga.List1.AddItem adoData.Recordset.Fields(5).Value
                            frmPretraga.List1.AddItem "Pozicija:"
                            frmPretraga.List1.AddItem adoData.Recordset.Fields(6).Value
                            frmPretraga.List1.AddItem "Datum:"
                            frmPretraga.List1.AddItem adoData.Recordset.Fields(7).Value
                            'Exit Sub
                        End If
                    adoData.Recordset.MoveNext
                    Loop
                adoData.Recordset.MoveFirst
            Else
            info = MsgBox("Ne mogu se unositi sledeci znakovi:   \  /  :  *  ?  <  >  |  " & Chr(34), vbCritical, "Greska")
            End If
        Else
        info = MsgBox("Niste uneli ID kartice", vbCritical, "Greska")
        End If
    Else
    info = MsgBox("Baza je prazna", vbInformation, "Obavestenje")
    End If
Else
info = MsgBox("Niste ucitali bazu", vbCritical, "Greska")
End If

'hell:
'MsgBox Err.Description, vbCritical, "Error:" & CStr(Err.Number)
End Sub

Private Sub cmdPonisti_Click()

 If MsgBox("Undo changes?", vbYesNo + vbQuestion, " Cancel Edits") = vbYes Then
    adoData.Refresh
    cmdADD.Caption = "Novi_Upis"
    
 End If
End Sub

Private Sub cmdPrethodni_Click()
On Error GoTo greska0
    If (adoData.Recordset.BOF = False) Then
        adoData.Recordset.MovePrevious  ' pomeranje prethodnog
        'upis prethodnog
    txtRadni_Dan = adoData.Recordset.Fields(0).Value
    txtrfidID = adoData.Recordset.Fields(1).Value
    txtIme = adoData.Recordset.Fields(2).Value
    txtPrezime = adoData.Recordset.Fields(3).Value
    txtOperacija = adoData.Recordset.Fields(4).Value
    txtKomentar = adoData.Recordset.Fields(5).Value
    cmbpozicija = adoData.Recordset.Fields(6).Value
    txtDatum = adoData.Recordset.Fields(7).Value
        Exit Sub
    End If
greska0:
On Error GoTo fee1
    adoData.Recordset.MoveNext
    MsgBox "Dosliste do pocetka baze!", , "Obavestenje"
    txtRadni_Dan = adoData.Recordset.Fields(0).Value
    txtrfidID = adoData.Recordset.Fields(1).Value
    txtIme = adoData.Recordset.Fields(2).Value
    txtPrezime = adoData.Recordset.Fields(3).Value
    txtOperacija = adoData.Recordset.Fields(4).Value
    txtKomentar = adoData.Recordset.Fields(5).Value
    cmbpozicija = adoData.Recordset.Fields(6).Value
    txtDatum = adoData.Recordset.Fields(7).Value
        Exit Sub
fee1:
        MsgBox "Baza je prazna", , "Obavestenje"
End Sub

Private Sub cmdSave_Click()
If txtIme.Text = "" Then
    MsgBox "Niste uneli ime radnika!", , "Obavestenje"
   
    Exit Sub

      End If

If txtPrezime.Text = "" Then
    MsgBox "Niste uneli prezime radnika!", , "Obavestenje"
    txtPrezime.SetFocus
    Exit Sub
 
End If
If cmbpozicija.Text = "" Then
    MsgBox "Niste uneli poziciju palete!", , "Obavestenje"
    cmbpozicija.SetFocus
    Exit Sub
  Else


End If
If txtrfidID.Text = "" Then
    MsgBox "Niste uneli ID kartice!", , "Obavestenje"
    txtrfidID.SetFocus
    Exit Sub
End If

    'On Error GoTo postoji                     'Upis u bazu'
    
    If (Not adoData.Recordset.EOF) Then
        adoData.Recordset.MoveLast
    End If
    adoData.Recordset.AddNew
    adoData.Recordset.Fields(1) = txtrfidID.Text
    adoData.Recordset.Fields(2) = txtIme.Text
    adoData.Recordset.Fields(3) = txtPrezime.Text
    adoData.Recordset.Fields(4) = txtOperacija.Text
    adoData.Recordset.Fields(5) = txtKomentar.Text
    adoData.Recordset.Fields(6) = cmbpozicija.Text
    adoData.Recordset.Fields(7) = txtDatum.Text
    adoData.Recordset.Update
    cmdADD.Enabled = True
    MsgBox "Podaci su uneseni  u bazu", , "Obavestenje"
  
    cmdFind.Enabled = True
    cmdDelete.Enabled = True
    cmdSave.Enabled = False
    
   ' bela boja
    txtrfidID.BackColor = &H8000000B
    txtIme.BackColor = &H8000000B
    txtPrezime.BackColor = &H8000000B
    txtOperacija.BackColor = &H8000000B
    txtRadni_Dan.BackColor = &H8000000B
    cmbpozicija.BackColor = &H8000000B
    txtKomentar.BackColor = &H8000000B
    txtDatum.BackColor = &H8000000B
    
    txtrfidID.Enabled = False
    txtIme.Enabled = False
    txtPrezime.Enabled = False
    txtOperacija.Enabled = False
    txtRadni_Dan.Enabled = False
    cmbpozicija.Enabled = False
    txtDatum.Enabled = False
    txtKomentar.Enabled = False
    Exit Sub
'postoji:
        'MsgBox "ID operacije  " & txtRadni_Dan & "  postoji u bazi !", , "Obavestenje"
    'txtrfidID = ""
    'txtIme = ""
    'txtPrezime = ""
    'txtOperacija = ""
    'txtRadni_Dan = ""
    'cmbpozicija = ""
    'txtDatum = ""
    'txtKomentar = ""
        'cmdADD.Enabled = False
        'txtrfidID.SetFocus
End Sub

Private Sub cmdSledeci_Click()
On Error GoTo greska1
 If (adoData.Recordset.EOF = False) Then
    adoData.Recordset.MoveNext
    txtIme = adoData.Recordset.Fields(0).Value
    txtRadni_Dan = adoData.Recordset.Fields(0).Value
    txtrfidID = adoData.Recordset.Fields(1).Value
    txtIme = adoData.Recordset.Fields(2).Value
    txtPrezime = adoData.Recordset.Fields(3).Value
    txtOperacija = adoData.Recordset.Fields(4).Value
    txtKomentar = adoData.Recordset.Fields(5).Value
    cmbpozicija = adoData.Recordset.Fields(6).Value
    txtDatum = adoData.Recordset.Fields(7).Value
    Exit Sub
 End If
greska1:
On Error GoTo fee
    adoData.Recordset.MovePrevious
    MsgBox "Dosli ste do kraja baze!", , "Obavestenje"
    txtRadni_Dan = adoData.Recordset.Fields(0).Value
    txtrfidID = adoData.Recordset.Fields(1).Value
    txtIme = adoData.Recordset.Fields(2).Value
    txtPrezime = adoData.Recordset.Fields(3).Value
    txtOperacija = adoData.Recordset.Fields(4).Value
    txtKomentar = adoData.Recordset.Fields(5).Value
    cmbpozicija = adoData.Recordset.Fields(6).Value
    txtDatum = adoData.Recordset.Fields(7).Value
    Exit Sub
fee:
         MsgBox "Baza je prazna"

End Sub

Private Sub IeTimer1_Timer()
txtDatum.Text = Date

End Sub

Private Sub UserForm_activate()


With cmbpozicija  'da ispise portove u combo box portovi
    .AddItem "1"
    .AddItem "2"
    .AddItem "3"
    .AddItem "4"
    .AddItem "5"
    .AddItem "6"
End With

End Sub


Edit: Dodati tagovi za 'source'. >Tema je za Access forum.

[Ovu poruku je menjao 3okc dana 24.12.2010. u 10:15 GMT+1]
 
Odgovor na temu

[es] :: Access :: Visual Basic 6 i VBA Pomoc

[ Pregleda: 1542 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.