Hej! <b>Fråga 1.</b> <b>Fråga 1.</b> <b>Fråga 2.</b> Tack så mycket!!!Access2000
Jag sitter med en access-databas version 2000
Jag har ett antal frågor som jag skulle vilja få hjälp med:
Fråga 1. (denna har jag frågat tidigare här i forumet innan jag kom på att jag hade Accsess2000)
Hur lägger man till värden i en kombobox. Jag är ju van att kunna göra så här:
Me.combobox1.add("Kalle") eller
Me.combobox1.addItem("Lisa")
Först sätter man väl RowSourceType till "Value List", men hur gör man sedan när addItem inte finns
med i denna version av Access.
Har någon förslag om hur jag ska göra!?!
Tar också tacksamt mot ett exempel på hur man lägger till värden i en listbox
Fråga 2.
Jag har ett formulär där jag fixar en sql-sträng och laddar ett recordset efter olika sökkriterier.
Det jag nu vill göra med mitt recordset är att skriva ut alla posterna i tex ett under formulär
Det jag vill göra är alltså något liknande:
strSql = "SELECT ------FROM------ WHERE ------------"
Set rs = conn.Execute(strSql)
'så till problemet:
Me.ChildForm.DefaultView = "Datasheet"
Form_frmDeliveries.RecordSource = strSql
eller
Form_frmDeliveries.RecordSet = rs
Jag har jobbat med VB tidigare och där brukade jag använda mig av en datagrid, den kunde man bara tilldela ett recordset, sen var allt klart! Hur smidigt som helst!!
Det jag undrar nu är alltså om det finns något lika smidigt sätt här. Spelar inte så stor roll om jag använder mig av underformulär eller något annat. Jag är öppen för förslag. Vill gärna ha ett exempel med VBA -kod!
Fråga 3.
Hur får jag bort Record-räknaren (eller vad den nu heter) den som man kan klicka på pilar för att gå mellan poster.
(Sitter längst ner till vänster)
Tack på förhand!!!!!!!!
MariaSv: Access2000
Vad är det för information du vill lägga in i comboboxen? Om du hämtar informationen från databasen är det bättre att "binda" den mot en fråga. Loopa igenom recordset är onödigt.
Om du har egna värden kan du skriva:
Item = "Lisa"
If len(combobox1.RowSource) > 0 Then
combobox1.RowSource = combobox1.RowSource & ";" & Item
Else
combobox1.RowSource = Item
End If
<b>Fråga 2.</b>
Bind underformuläret till din fråga direkt. Du tänker för mycket vb.
strSql = "SELECT ------FROM------ WHERE ------------"
Me.Underformulär.Form.RecordSource = strSql
Tänk på att Access använder DAO istället för ADO.
<b>Fråga 3.</b>
MArkera formuläret och tilldela egenskapen RecordSelectors falskt.
Sv:Access2000
Lägga till i combobox - Tusen tack för hjälpen det funkar jättebra!!! :-)
<b>Fråga 2.</b>
Bind underformuläret till din fråga direkt. Du tänker för mycket vb.
strSql = "SELECT ------FROM------ WHERE ------------"
Me.Underformulär.Form.RecordSource = strSql
Försökte med detta, men får följande fel:
The expression you entered refers to an object that is closed or doesn't exist
Jag gjorde följande
Valde en "Subform/Subreport" i toolboxen
Lade ut den på formuläret, den fick namnet Child55
Körde sedan detta:
Me.Child55.Form.RecordSource = strSql
Gör jag något fel?? (Vet med säkerhet att sql-strängen är riktig)
<b>Fråga 3.</b>
Jag gjorde som du sa och markerade formuläret och tilldelade egenskapen RecordSelectors No.
Öppnade sedan formuläret men den fanns fortfarande med.
Provade sedan att i form load skriva in följande:
Me.RecordSelectors = False, men den finns ändå fortfarande med :-(
Sedan en liten följdfråga på: Tänk på att Access använder DAO istället för ADO.
Jag är van vid att göra så här:
Dim rs As ADODB.Recordset
Dim strSql As String
strSql ="SELECT * FROM ....."
Set rs = conn.Execute(strSql)
Menar du att jag ska deklarera ett "vanligt" recordset istället för ADODB.Recordset??
MVH / Maria
Tack för Sv: Access2000
Access har ingen direkt motsvarighet till grid. Så du måste ha skapat ett formulär som innehåller de fält du vill visa i som.
The expression you entered refers to an object that is closed or doesn't exist.
Innebär att du inte har ett formulär i din underformulär.
<b>Fråga 3.</b>
Sorry, skulle vara NavigationButtons. RecordSelector är den grå rutan till vänster om varje rad.Sv:Access2000
Nu fattar jag!
Så här gjorde jag. Jag skapade en fråga, sedan skapade jag ett subformulär baserat på frågan.
Sedan var det bara att göra som du sa Me.Underformulär.Form.RecordSource = strSql
:-))
Tack igen!!!
Maria