Hej Jag hade använt två sql-frågor för att ta reda på det största värdet i respektive tabell, och sen gjort en jämförelse mellan dem. tack kjell! Hej! HejJämnföra två tal i en access databas ?
Har ett litet problem, jag vill jämnföra två tal som finns i en access databas, (olika tabeller ) ta ut det största talet och lägga till 1
sedan skicka detta till en textbox.
Min code hitentills:
SQL = "Select Result = Case When datorutrustning.inventarienummer > kringutrustning.inventarienummer Then Else kringutrustning.inventarienummer +1"
txt1.Text = SQL1
txt2.Text = SQL2
x = SQL
txtRes.Text = x
Men detta fungerar inte på något sett.
I de olika tabllerna i dator/kring.inventarienummer finns många olika nummer inte bara ett enda.
Med Vänlig hälsning
DanielSv: Jämnföra två tal i en access databas ?
SELECT MAX(Inventarienummer) AS Maxnr FROM Datorutrustning
SELECT MAX(Inventarienummer) AS Maxnr FROM Kringutrustning
När du vet vilken som är störst, är det enkelt att lägga till en ny post i rätt tabell med det nya inventarienumret.
KjellSv: Jämnföra två tal i en access databas ?
Men nu när jag har de två största talen, hur jämnför jag dem för att sedan skicka dem in i min textbox.
Detta nummer som kommer fram här är bara ett förslag, eller rättare sagt nästa lediga nummer (dvs det skall +1) innan det skickas till textboxen.
Med Vänlig Hälsning
DanielSv: Jämnföra två tal i en access databas ?
Kanske något i denna stilen:
Sub NyttInventarienummer()
Dim Con as ADODB.Connection, Rs as ADODB.Recordset
Dim Tal1 as Integer, Tal2 as Integer
Dim Sql as String
Set Con=New ADODB.Connection
Set Rs=New ADODB.Recordset
Con.Open DinAnslutningssträng
'Hämta första värdet
Sql="SELECT MAX(Inventarienummer) AS Maxnr FROM Datorutrustning"
Rs.Open Sql,Con,adOpenStatic, adLockOptimistic, adCmdText
Tal1=Rs!Maxnr
Rs.Close
'Hämta andra värdet
Sql="SELECT MAX(Inventarienummer) AS Maxnr FROM Kringutrustning"
Rs.Open Sql,Con,adOpenStatic, adLockOptimistic, adCmdText
Tal2=Rs!Maxnr
Rs.close
'Gör jämförelsen
If Tal1 > Tal2 Then
Text1.Text = CStr(Tal1 + 1)
Sql = "INSERT INTO Datorutrustning (Inventarienummer,Fält2,Fält3...)" & _
" VALUES(" & Tal1 + 1 & ", Värde2, Värde3,...)"
Else:
Text1.Text = CStr(Tal2 + 1)
Sql = "INSERT INTO Kringutrustning (Inventarienummer,Fält2,Fält3...)" & _
" VALUES(" & Tal2 + 1 & ", Värde2, Värde3,...)"
End If
'Uppdatera tabellen
Con.Execute Sql
End Sub
KjellSv: Jämnföra två tal i en access databas ?
puh!, Jag får det ej att fungera =(
Har du lust att ta en titt på det, så kan jag maila det till dig
min adress är 0431@telia.com
Måste jag ha ADODC (Knappar), vill helst ha DATA, eller det kanske inte går då?.
Med Vänlig Hälsning
Daniel