• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Zoeken in tekstvak

Status
Niet open voor verdere reacties.

johngub

Gebruiker
Lid geworden
1 jun 2006
Berichten
52
Hallo,

Ik heb in excel een tekstvak daar wil ik graag in kunnen zoeken (met de gewone zoekfunctie in excel werkt dat niet)
Is er misschien in VBA iets dat wel een een tekstvak zoekt ?

Bedankt John
 
Met VBA kan dat zeker. Maar plaats eens een voorbeeld, want hoeveel tekst heb je in een tekstvak dat je er in moet zoeken?
 
Het is gewoon een tekstvak ik weet natuurlijk niet hoeveel tekst en woorden er in komen dat verschilt per keer.
Ik wil gewoon naar een woord zoeken.
 
Laatst bewerkt:
Ok, maar is dat een tekstvak in een Userform? Of eentje op een werkblad? En is dat dan een ActiveX object of een formulier object? Hoe wordt dat tekstvak gevuld? Daar zijn weer meerdere mogelijkheden. Het is dus niet "gewoon" een tekstvak als je er verder geen uitleg bij geeft.
Waarom is een voorbeeldje altijd zo moeilijk...
 
Hier het voorbeeld
 

Bijlagen

  • test tekstvak.xlsm
    774,3 KB · Weergaven: 77
Laatst bewerkt:
Je wilt zoeken in een tekstvak en wat moet er dan gebeuren? Je vraagstelling is niet echt duidelijk:confused:
Maar goed deze had ik nog in mijn excel kastje liggen.
Deze heeft het tekstvak weer waar de zoekwaarde in voorkomt.
Code:
Sub TextBox_Vinden()
    Dim rStart As Range
    Dim shp As Shape
    Dim sFind As String, sTemp As String
    Dim Response
    sFind = InputBox("Zoeken naar?")
    If Trim(sFind) = "" Then
        MsgBox "Vul een zoekwaarde in!"
        Exit Sub
    End If
    Set rStart = ActiveCell
    For Each shp In ActiveSheet.Shapes
        sTemp = shp.TextFrame.Characters.Text
        If InStr(LCase(sTemp), LCase(sFind)) <> 0 Then
            Response = MsgBox( _
              prompt:=shp.Name & vbCrLf & _
              sTemp & vbCrLf & vbCrLf & _
              "Verder zoeken?", _
              Buttons:=vbYesNo, Title:="Vervolg?")
            If Response <> vbYes Then
                Set rStart = Nothing
                Exit Sub
            End If
        End If
    Next
    MsgBox "Geen resultaat!"
    Set rStart = Nothing
End Sub
En deze is zoeken en vervangen
Code:
Sub Zoeken_Vervangen()
Dim xWs As Worksheet
Dim shp As Shape
Dim xFindStr As String, xReplace As String
    xFindStr = Application.InputBox("Zoeken naar:", xTitleId, "", Type:=2)
    xReplace = Application.InputBox("Vervangen door:", xTitleId, "", Type:=2)
Set xWs = Application.ActiveSheet
    On Error Resume Next
For Each shp In xWs.Shapes
    xValue = shp.TextFrame.Characters.Text
    shp.TextFrame.Characters.Text = VBA.Replace(xValue, xFindStr, xReplace, 1)
Next
End Sub
 
Had inderdaad iets duidelijker kunnen zijn.
Deze werkt prima hij geeft aan in welke tekstbox het staat (bijv 15) maar zou het kunnen dat hij daar ook naar toe gaat
zodat ik niet uit hoef te zoeken welke tekstbox het is? (het zijn er een stuk of 60 tekstboxen) :)
 
Laatst bewerkt:
Niemand die mij kan helpen ?
 

Bijlagen

  • test tekstvak2.xlsm
    778,2 KB · Weergaven: 66
Laatst bewerkt:
Kijk eens naar dit stukje van je code en voeg de rode regels toe:
Code:
    For Each shp In ActiveSheet.Shapes
        sTemp = shp.TextFrame.Characters.Text
        If InStr(LCase(sTemp), LCase(sFind)) <> 0 Then
            [COLOR="#FF0000"]Application.Goto Range("A" & shp.TopLeftCell.Row-3), True
            shp.Select[/COLOR]
            Response = MsgBox( _
              prompt:=shp.Name & vbCrLf & _
              sTemp & vbCrLf & vbCrLf & _
              "Verder zoeken?", _
              Buttons:=vbYesNo, Title:="Vervolg?")
            If Response <> vbYes Then
                Set rStart = Nothing
                Exit Sub
            End If
        End If
    Next
 
Laatst bewerkt:
Dit lijkt me typisch een geval voor een userform.
De ingevoerde gegevens worden dan weggeschreven in een (1) werblad.
In plaats van de huidige 800k is het bestand dan nog maar 30K groot; ook als alle maanden van een jaar zijn opgenomen.
 
Daar zal ik me eens in gaan verdiepen..
Heb geen idee hoe ik dat moet maken
 
Ter illustratie:
 

Bijlagen

  • __journaal snb.xlsb
    15,8 KB · Weergaven: 100
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan