Side er siden id, position er ordets position på siden.
Her er det jeg har nu.
SELECT [OrdTabel].[Ord], [DelSideTabel].[position] FROM OrdTabel INNER JOIN DelSideTabel ON [OrdTabel].[OrdId]=[DelSideTabel].[OrdId] WHERE ((([DelSideTabel].[SideId])=2) And [DelSideTabel].[position] >=30 AND [DelSideTabel].[position] <= 200);
Her får jeg strengen ud ved at tage ordene ord fra ord ud af tabellen. Men det er lidt neder at skulle lave en lykke der skal gøre dette måske 50 gange. Da ordet kan have forekommet på mange sider. Men jeg kan ikke se en anden vej.
difn Så lad være med at et sidekriterie. Så vil forespørgslen jo medtage alle de sider, hvord du finder ordet:
SELECT [OrdTabel].[Ord], [DelSideTabel].[position] FROM OrdTabel INNER JOIN DelSideTabel ON [OrdTabel].[OrdId]=[DelSideTabel].[OrdId] WHERE (([DelSideTabel].[position]>=30) AND ([DelSideTabel].[position]<=200));
Ved at bruge SQL og en hel post til hvert ord laver du så vidt jeg kan se et søgesystem, som allerede findes i Visual Basic. Hvis du gemmer hele sætningen i et enkelt felt kan du med VBA og FindRecord (med konstanten acAnywhere) og FindNext i et DO/LOOP opnå det samme med ganske få programlinjer. Hvad gør du med søgeresultet?
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.