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

349

    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. Valtion alijäämä = yritystukien määrä = 10 mrd. euroa

      Mutta persut eivät vaan suostu tasapainottamaan valtion budjettia, vaikka yritystuet on tiedetty haitallisiksi. Miksi p
      Maailman menoa
      113
      8085
    2. Suomi käyttää sosiaalietuuksiin suhteessa eniten rahaa koko maailmassa

      Suomi käyttää sosiaaliturvaetuuksiin enemmän rahaa suhteessa bruttokansantuotteeseen kuin mikään muu maa maailmassa. Su
      Maailman menoa
      409
      7283
    3. Grahn-Laasonen: "Kansalainen joutuu pettymään, jos demareita äänestää"

      Ministeri viittaa tuoreeseen Helsingin Sanomien juttuun, jossa demarijohtajan keinoja Suomen suunnan muuttamiseksi esite
      Maailman menoa
      80
      4554
    4. Vähän fiksumpi Nimi kisa ? :=)

      Kirjoita teidän etunimet allekkain. Jos nimissä on joku kirjain sama, poista se. Tee sama tarkistus kaikille kirjaimill
      Ikävä
      29
      4299
    5. Mitä hyvää rikkaiden hyysääminen Suomelle tuonut?

      Minäpä vastaan: ei yhtikäs mitään, vaan pelkkää vahinkoa. Demareiden ansiosta Suomen valtio oli käytännössä vielä 1980-
      Maailman menoa
      2
      2953
    6. Mikä on suurin luonne- eroavuus sinussa

      Ja kaivatussasi? Vaikuttaako se huonoon vai hyvään suuntaan siinä, että teistä voisi tulla jotain?
      Ikävä
      203
      2709
    7. Mitä haluaisit sanoa tänään hänelle?

      Rakastamallesi ihmiselle.
      Ikävä
      108
      2486
    8. Kenen haluaisit voittavan Amazing Racen: Tuomas ja Esko, Millu ja Karoliina vai Maria ja Vilma?

      Amazing Race Suomi huipentuu lauantaina finaaliin. Jäljellä on kolme paria ja tiedossa on tehtäviä, jotka järkyttävät os
      Tv-sarjat
      33
      2465
    9. Gallup: Katsotko Salkkareita tai oletko katsonut?

      Salatut elämät on suomalaisten suosikkisarja vuosikymmenestä toiseen. Salkkareiden parissa viettää aikaa sukupolvet laps
      Tv-sarjat
      20
      2125
    10. Amazing Race Tomas rehellisenä Esko-appiukon, 63, tilasta: "Sairastelut ja..."

      Tomas Grekov ja Esko Rotola-Pukkila ovat mukana Amazing Race Suomi -kisassa. Ja nyt vuorossa on finaali. Hankaluuksia m
      Tv-sarjat
      1
      1997
    Aihe