Avatar billede henrik20 Nybegynder
18. maj 2010 - 09:23 Der er 1 kommentar og
1 løsning

Hjælp til ændring af funktion og sql

Hey

Jeg har fundet følgende funktion som gør det jeg har brug for, og som iøvrigt virker ganske fint. Jeg kunne dog godt tænke mig at ændre i funktion og SQL så det passer til de overskrifter jeg har i min tabel, frem for at jeg skal ændre mine overskrifter til at passe til funktionen.

Jeg er ikke helt skarp på funktioner, men jeg er ved at lære det.

Funtion og SQL er som følger:

Public Function Conc(Fieldx, Identity, Value, Source) As Variant
  Dim cnn As ADODB.Connection
  Dim rs As ADODB.Recordset
  Dim SQL As String
  Dim vFld As Variant
 
  Set cnn = CurrentProject.Connection
  Set rs = New ADODB.Recordset
  vFld = Null
 
  SQL = "SELECT [" & Fieldx & "] as Fld" & _
        " FROM [" & Source & "]" & _
        " WHERE [" & Identity & "]=" & Value
 
  ' open recordset.
  rs.Open SQL, cnn, adOpenForwardOnly, adLockReadOnly
 
  ' concatenate the field.
  Do While Not rs.EOF
    If Not IsNull(rs!Fld) Then
      vFld = vFld & ", " & rs!Fld
    End If
    rs.MoveNext
  Loop
  ' remove leading comma and space.
  vFld = Mid(vFld, 3)
 
  Set cnn = Nothing
  Set rs = Nothing
 
  ' return concatenated string.
  Conc = vFld
End Function



SELECT tblData.[ID], Conc("Field1","ID",[ID],"tblData") AS Field1
FROM tblData
GROUP BY tblData.[ID];



Istedet for ID, og Field1, har min tabel overskrifterne "Insp Lot" og "Commments"
Avatar billede fdata Forsker
03. juni 2010 - 13:37 #1
Jamen, er det ikke bare et spørgsmål om at ændre i kaldet ttil funktionen? Altså:

SELECT tblData.[Insp Lot], Conc("Commments","[Insp Lot]",[Insp Lot],"tblData") AS Commments
FROM tblData
GROUP BY tblData.[Insp Lot];

... og så i øvrigt ændre tblData til dit tabelnavn
Avatar billede fdata Forsker
23. juni 2010 - 19:20 #2
Takker for point ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester