Gustav Brock
Gustav at cactus.dk
Wed Dec 27 05:38:32 CST 2006
Hi Pedro You could also find the chunk, assign it to an unbound textbox, and then search that textbox: Public Function GetMemoChunk( _ ByVal strMemo As String, _ ByVal strSearch As String) _ As String Const clngChunk As Long = &H8000& Dim lngPos As Long Dim strChunk As String lngPos = InStr(1, strMemo, strSearch, vbTextCompare) If lngPos > 0 Then Debug.Print Int(lngPos / clngChunk) strChunk = Mid(strMemo, 1 + (Int(lngPos / clngChunk) * clngChunk), clngChunk) End If GetMemoChunk = strChunk End Function Then: Set rst = Me.RecordsetClone ' <Locate current record using its ID and Bookmark.> varMemo = rst!BigMemoField.Value If Not IsNull(varMemo) Then strChunk = GetMemoChunk(varMemo, strSearch) If Len(strChunk) = 0 Then ' Search string not found in memo. Else With Me!txtMemoSearch .Value = strChunk ' Perform search in txtMemoSearch textbox to display found string. ' <your search and display code> ' Clean up. .Value = Null End With End If End If rst.Close Set rst = Nothing /gustav >>> pedro at plex.nl 24-12-2006 14:14 >>> Hello Gustav, i don't need to edit so, how can i set the reading in chunks of 32K??? Pedro ----- Original Message ----- From: "Gustav Brock" <gustav at cactus.dk> To: <accessd at databaseadvisors.com> Sent: Sunday, December 24, 2006 12:16 AM Subject: Re: [AccessD] overflow > Hi Pedro > > You could read in the memo field in chunks of 32K until a match or the > last chunk is read. > That should be fine, if all you need is to display a match. If you wish to > edit the text, the plot thickens ... > /gustav > > >>>> pedro at plex.nl 24-12-06 0:00 >>> > Hello Gustav, > > i didn't know that. > Can i use something else for this, or work around. > Otherwise i have to use an other search function. > > Pedro > > > > ----- Original Message ----- > From: "Gustav Brock" <gustav at cactus.dk> > To: <accessd at databaseadvisors.com> > Sent: Saturday, December 23, 2006 11:47 PM > Subject: Re: [AccessD] overflow > > >> Hi Pedro >> >> The value of SelStart itself is limited to the max. positive value of an >> Integer. >> >> /gustav >> >>>>> pedro at plex.nl 23-12-06 22:49 >>> >> Hello Group, >> >> when using the search function below and when the position of the word >> that is used in the search-string in field "Plaats" is above 32,767 >> (memofield), i get an runtime error 6, overflow . >> I changed in the code: "Dim plaats As Integer" to "Dim plaats As Long", >> but still have the same error. I don't understand why? >> >> Pedro Janssen >> >> >> >> ------------------code------------------------------- >> Option Compare Database >> Dim plaats As Integer >> >> Private Sub Knop21_Click() >> >> If dummy <> "" Then >> tekstplaats = plaats >> If tekstplaats = 0 Then >> tekstplaats = 1 >> End If >> INHOUD.SetFocus >> >> plaats = INHOUD.SelStart + Len(dummy) + 1 >> plaats = InStr(tekstplaats + 1, INHOUD, dummy, 1) >> If plaats <> 0 Then >> INHOUD.SelStart = plaats - 1 >> INHOUD.SelLength = Len(dummy) >> Else >> INHOUD.SelStart = 0 >> INHOUD.SelLength = 0 >> End If >> tekstplaats = plaats >> Else >> MsgBox "Kan geen lege tekst zoeken !!", 16, "Tekst zoeken" >> End If >> >> End Sub >> >> ------------------/code--------------------------