• 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.

Text uit cel splitsen in woorden in vooraf ingesteld celbereik

Status
Niet open voor verdere reacties.

martindeboer1988

Gebruiker
Lid geworden
5 nov 2016
Berichten
93
Ik zal proberen uit te leggen wat de bedoeling is, ik heb een textbox welke de waarde meteen overneemt in de cel F4.
Mijn bedoeling was om het bericht wat daar dan stond op te splitsen in losse woorden elk woord in een cel ( bereik H4:K22 ).
De vba code die ik erin gebruik is kort zoals onderstaand, is er een manier waarop dit kan ?

Code:
Private Sub TextBox1_Change()
    Range("F4").Value = TextBox1.Value
End Sub

Bekijk bijlage berichten.xlsm
 
Doet dit wat je bedoelt?
Code:
Range("H4:K22") = Split(Range("F4"))
 
dit splitst de tekst over het aangegeven bereik inderdaad alleen bij de tekst "dit is een testbericht" bestaat H4:H22 alleen uit de woordjes dit I4:I22 uit de woordjes is enzovoort.
Wanneer het ingegeven bericht langer is dan 4 woorden moeten deze woorden ook ingevuld worden in het celbereik.
Is zoiets mogelijk ?
 
Of zoiets?
want deze is niet echt succesvol (voor mij:o)
Ik zal proberen uit te leggen wat de bedoeling is

Code:
Sub dot()
Dim LString As String
Dim LArray() As String

LString = [F4]
LArray = Split(LString, " ")

[H4] = LArray(0)
[I4] = LArray(1)
[J4] = LArray(2)
[K4] = LArray(3)
[COLOR="#008000"]'enz[/COLOR]
End Sub
 
Of dit?
Code:
Sub SplitF4()
    Dim F4() As String
    
    F4() = Split(Range("F4"))
    Range("H4:K22").ClearContents
    i = 0
    For x = 4 To 22
        For y = 8 To 11
            Cells(x, y) = F4(i)
            If i = UBound(F4) Then
                Exit Sub
            Else
                i = i + 1
            End If
        Next y
    Next x
End Sub
 
@gast0660: bedankt voor je input maar helaas kreeg ik dat niet werkend. :confused:
@edmoor: dat is precies wat ik nodig had wederom bedankt voor de geboden expertise :thumb:
 
Toch nog een aanvullende vraag ik heb het bereik iets aangepast en de code is nu als volgt.

Code:
Private Sub CommandButton1_Click()
  Dim B22() As String
    
    B22() = split(Range("B22"))
    Range("E3:P34").ClearContents
    i = 0
    For x = 3 To 34
        For y = 4 To 16
            Cells(x, y) = B22(i)
            If i = UBound(B22) Then
                Exit Sub
            Else
                i = i + 1
            End If
        Next y
    Next x
End Sub

Hoe kan ik het nu zo maken dat in bereik B24:C34 de meest voorkomende woorden worden weergegeven. Of vraag ik nu het ( onmogelijke :D ) ?
 
Gebruik geen namen voor variabelen die kunnen verwijzen naar iets anders: werkbladnamen, celnamen, VBA-termen, etc.
Dim B22() is dan uit den boze.

Gebruik nooit, herhaling, nooit samengevoegde cellen.

Code:
sub M_snb()
   sn=split(cells(22,2))
   cells(3,5).resize(,ubound(sn)+1)=sn
End Sub

Als je een vraag stelt doe je er goed aan niet in analogieën te spreken maar exact aan te geven waar het je om gaat.(de meesst voorkomende woorden ???).
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan