Access 2003 VBA Kopiointi uudeksi tietueeksi

qwerty12

Terve

Sain aikaseksi tehtyä seuraavanlaisen VBA-koodin:
Se tekee seuraavaa: Kopioi valitun osan tiedot. Muuttaa koodin ja avaimen lukua suuremmaksi. Sen pitäisi vielä siirtyä juuri kopioituun uuteen osaan. Mutta sitä se ei tee. Ilmoittaa vain että objekti ei ole avoinna. Missä vika?




Private Sub kopioiSQL_Click()
On Error GoTo Err_kopioiSQL_Click


uusinumero = DMax("[Avain]", "[OsatT]") 1
kopioitava = DMax("[Koodi]", "[OsatT]") 1

CurrentDb.Execute "INSERT INTO OsatT (Avain, Tyyppi, koodi, size, valmistaja, Nnumero) " & _
"SELECT " & CLng(uusinumero.Value) & ", Tyyppi," & CLng(kopioitava.Value) & ", size, valmistaja, Nnumero " & _
"FROM OsatT WHERE Avain=" & CLng(Avain.Value), Koodi = " & CLng(koodi.Value)"

Me.Refresh




DoCmd.GoToRecord , DMax("[Avain]", "[OsatT]")


Exit_kopioiSQL_Click:
Exit Sub

Err_kopioiSQL_Click:
MsgBox Err.Description
Resume Exit_kopioiSQL_Click

End Sub

Tämä kopioi osan tiedot sekä muuttaa avain ja koodin numeroa suuremmaksi luvuksi. Nyt kun yritän avata samaan syssyyn niin Access ilmoittaa että objekti se ja se ei ole avoinna?

Missä vika?

Vastauksista kiitokset

4

357

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • mmm

      GotoRecord komennossa on väärät argumentit. Yrität laittaa tietuenumeron tietokantaobjektin nimen tilalle.

      Docmd.GotoRecord ObjectType, ObjectName, Record, Offset

      • qwerty12

        Ei vaan vieläkään toimi.

        Kaunis kiitos kuitenkin.


      • mmm
        qwerty12 kirjoitti:

        Ei vaan vieläkään toimi.

        Kaunis kiitos kuitenkin.

        Private Sub kopioiSQL_Click()
        On Error GoTo Err_kopioiSQL_Click

        uusinumero = DMax("[Avain]", "[OsatT]") 1
        kopioitava = DMax("[Koodi]", "[OsatT]") 1

        CurrentDb.Execute "INSERT INTO OsatT (Avain, Tyyppi, koodi, size, valmistaja, Nnumero) " & _
        "SELECT " & CLng(uusinumero) & ", Tyyppi," & CLng(kopioitava) & ", size, valmistaja, Nnumero " & _
        "FROM OsatT WHERE Avain=" & CLng(Me!Avain) & "AND koodi = " & CLng(Me!koodi)

        Me.Requery
        DoCmd.GoToRecord acDataForm, Me.Name, acLast

        Exit_kopioiSQL_Click:
        Exit Sub

        Err_kopioiSQL_Click:
        MsgBox Err.Description
        Resume Exit_kopioiSQL_Click


      • qwerty12
        mmm kirjoitti:

        Private Sub kopioiSQL_Click()
        On Error GoTo Err_kopioiSQL_Click

        uusinumero = DMax("[Avain]", "[OsatT]") 1
        kopioitava = DMax("[Koodi]", "[OsatT]") 1

        CurrentDb.Execute "INSERT INTO OsatT (Avain, Tyyppi, koodi, size, valmistaja, Nnumero) " & _
        "SELECT " & CLng(uusinumero) & ", Tyyppi," & CLng(kopioitava) & ", size, valmistaja, Nnumero " & _
        "FROM OsatT WHERE Avain=" & CLng(Me!Avain) & "AND koodi = " & CLng(Me!koodi)

        Me.Requery
        DoCmd.GoToRecord acDataForm, Me.Name, acLast

        Exit_kopioiSQL_Click:
        Exit Sub

        Err_kopioiSQL_Click:
        MsgBox Err.Description
        Resume Exit_kopioiSQL_Click

        Suuret kiitokset tuosta. Olen niin surkea tässä koodauksessa ettei tuu mistää mitää. Mutta vielä kerran suuret kiitokset. Hyvin toimii.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Kansalla on oikeus tietää miksi persut pettävät

      Koko kulunut hallituskausi on kysytty persuilta, minkä vuoksi he ovat pettäneet käytännössä jokaisen vaalilupauksen, ain
      Maailman menoa
      61
      7520
    2. Venäjän armeijan evp-upseeri: Armeija surkeassa tilassa, jonka läpäisee kaiken kattava

      valehtelu. Venäläiset alkaneet pohtia julkisesti maan todellisia tappioita. Z-bloggari ja 3. luokan kapteeni (evp.) Mak
      Maailman menoa
      123
      2946
    3. Minkälaisen viestin

      Laittaisit ikävöinnin kohteelle, jos rohkenisit?
      Ikävä
      142
      1776
    4. Kansalla on oikeus tietää mikä on SDP:n talousohjelma jolla maan talous

      saadaan nousuun? Miksi puolue piilottelee sitä, vai eikö sitä ole? Tähän asti olemme vaan saaneet kuulla hallituksen ha
      Maailman menoa
      65
      1659
    5. Ammattiliitto 900 euroa/vuosi - Työttömyyskassa 72 euroa/vuosi

      Ammattiliitosta eroamalla voi säästää jopa 800 euroa vuodessa. Mitä enemmän tienaat, sitä enemmän maksat liitolle. Esim
      Maailman menoa
      115
      1468
    6. Miten voit olla niin tyhmä

      että et tajunnut että sua vedätettiin? Tietäisitpä miten hyvät naurut on saatu. Naiselle
      Tunteet
      169
      1419
    7. Missä vaiheessa

      Päätit irl luovuttaa minun suhteeni?
      Ikävä
      131
      1163
    8. Millaisena uskot

      Kaivattusi kokevan tunteensa?
      Ikävä
      77
      863
    9. Kyriake=Kirkko

      Kirkko, Kyriake Kirkko-sana tulee kreikankielen sanasta Kyriake=Herran omat, Kristuksen omaksi kastettujen suuri joukko
      Kaste
      47
      812
    10. Mitä haluat eniten

      Kaivattusi kanssa?
      Ikävä
      52
      755
    Aihe