När jag skötte vårt medlemsregister direkt i Access kunde jag, när jag skulle lägga till en ny medlem som ex hade ett äldre syskon redan registrerat, duplicera den posten genom Det är snyggare att bara använda en insertfråga: Tack så jättemycket för ditt svar, jag fick det nästan att funka. Det jag vill göra är att skriva in ID:t i en textruta och sen köra följande: Du ska lägga variabeln utanför strängen: Ja så skulle det ju vara. Ett MYCKET stort tack för din och Andreas hjälp. Nu funkar det perfekt och sparar en massa tid för mig. Jaha, Något åt det här hållet:Duplicera post
Private Sub knKopieraPost_Click()
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 2, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 5, , acMenuVer70
End Sub
Därigenom behövde jag bara ändra namn då de flesta andra uppgifter var identiska.
Finns det något liknande sätt att göra det när jag nu lägger in medlemmarna via vår hemsida i stället. Det är samma Access-databas som används.Sv: Duplicera post
INSERT INTO Members (FirstName, LastName, Address, ...)
SELECT FirstName, LastName, Address, ...
FROM Members
WHERE ID = 123
På så sätt kan du mycket enkelt dupliera en post med ett fråge anrop.
Sv:Duplicera post
<code>
Sub kopMedlem(ByVal s As Object, ByVal e As EventArgs)
objCmd = New OleDbCommand("INSERT INTO Medlemmar (Personnr, LagID,... ) SELECT Personnr, LagID,... FROM (Medlemmar) WHERE MedlemsID = txtId.text", objConn)
objConn.Open()
objCmd.ExecuteNonQuery()
objConn.Close()
End Sub
</code>
Men jag vet inte hur jag får maskinen att tolka värdet i textboxen som Int. Har försökt med alla varianter som jag kan komma på men får bara felet att det är "Typblandningsfel i villkorsuttryck".
All hjälp mottages mycket tacksamt.Sv: Duplicera post
objCmd = New OleDbCommand("INSERT INTO Medlemmar (Personnr, LagID,... ) SELECT Personnr, LagID,... FROM (Medlemmar) WHERE MedlemsID = " + txtId.text, objConn)
Är lite osäker på VB.NET, det kanske ska vara & istället för +...
/JohanSv:Duplicera post
Sv:Duplicera post
INSERT INTO Medlemmar (Personnr, LagID,... ) SELECT Personnr, LagID,... FROM (Medlemmar) WHERE MedlemsID = @txtId
eller.....och vad ska hända sen?
Jag är alltså en ren hobbyprogrammerare på extrem amatörnivå, för att jag ska kunna omsätta detta i praktik behöver jag direkt vägledning. Tar som sagt tacksamt emot all hjälp för att kunna lära mig mer.Sv: Duplicera post
objCmd = new OleDbCommand("INSERT INTO Medlemmar (Personnr, LagID)" + _
"SELECT Personnr, LagID" + _
"FROM Medlemmar" + _
"WHERE MedlemsID = ?", objConn)
Dim OleDbParameter p As new OleDbParameter("@MedlemsID",OleDbType.Integer)
p.Value = int.Parse(txtId.text)
objCmd.Parameters.Add(p)
objConn.Open()
objCmd.ExecuteNonQuery()
objConn.Close()