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
Access 2003 VBA Kopiointi uudeksi tietueeksi
4
357
Vastaukset
- 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_ClickSuuret 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
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, ain617520Venä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.) Mak1232946- 1421776
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 ha651659Ammattiliitto 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. Esim1151468Miten voit olla niin tyhmä
että et tajunnut että sua vedätettiin? Tietäisitpä miten hyvät naurut on saatu. Naiselle1691419- 1311163
- 77863
Kyriake=Kirkko
Kirkko, Kyriake Kirkko-sana tulee kreikankielen sanasta Kyriake=Herran omat, Kristuksen omaksi kastettujen suuri joukko47812- 52755