Microsoft Excel

Herbers Excel/VBA-Archiv

Zelleninhalt mit VBA bearbeiten und verändern

Betrifft: Zelleninhalt mit VBA bearbeiten und verändern von: Lona
Geschrieben am: 29.09.2014 10:25:04

Hallo,

ich bin noch sehr unerfahren mit VBA, aber vielleicht kann mir hier im Forum jemand helfen.

Ich habe in meiner Excel-Tabelle eine Zelle in der Text steht. Innerhalb dieses Textes suche ich bestimmte Wörter, die nun komplett groß geschrieben werden sollen. Nun soll der gesamte Text plus der Änderung in einer neuen Zelle eingefügt werden.

Beispiel:
Ich habe den Text: "Jeden Samstag und Sonntag gehe ich spazieren"
Nun sollen Samstag und Sonntag komplett groß geschrieben und in einer neuen Zelle soll nun stehen: "Jeden SAMSTAG und SONNTAG gehe ich spazieren"

Ich kenne nicht die Stelle, an der das betreffende Wort steht und weiß auch nicht wie viele Zeichen danach folgen.

Meine Überlegungen gehen bisher soweit:
Ich speicher den Inhalt der Zelle in einer Variable zwischen. Suche in der Variablen nach dem Wort "Samstag", überprüfe an der wie vielten Stelle es im Text steht. Schreibe "SAMSTAG". Nun speichere ich in einer Variable den Text vor "Samstag", "SAMSTAG" und den Text nach "Samstag" zwischen. Und mache das gleiche für Sonntag. Diese Variable gebe ich nun in einer anderen Zelle wieder aus.

Kann mir jemand sagen mit welchen Befehlen ich das bewerkstelligen kann?

LG,
Lona

  

Betrifft: geht auch mit Formel von: Matthias L
Geschrieben am: 29.09.2014 10:34:30

Hallo

Dazu braucht man nicht unbedingt VBA

 B
3Jeden Samstag und Sonntag gehe ich spazieren
4Jeden SAMSTAG und SONNTAG gehe ich spazieren

Formeln der Tabelle
ZelleFormel
B4=WECHSELN(WECHSELN(B3;"Samstag";"SAMSTAG");"Sonntag";"SONNTAG")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

Gruß Matthias


  

Betrifft: AW: Zelleninhalt mit VBA bearbeiten und verändern von: yummi
Geschrieben am: 29.09.2014 10:36:02



Sub testreplace()
Dim Var As String

    Var = ActiveSheet.Cells(1, 3).Value
    ActiveSheet.Cells(3, 3).Value = Replace(Var, "Samstag", "SAMSTAG")
End Sub
Eine ganz einfache Version ohne Überprüfung und alles, die kannst Du weiter ausschmücken.

Gruß
yummi



  

Betrifft: AW: Zelleninhalt mit VBA bearbeiten und verändern von: Martin
Geschrieben am: 29.09.2014 10:39:13

Hallo Lona,

ich habe einen VBA-Code geschrieben, den du als Formel verwenden kannst:

Function Big(rngCell As Range, varWords As String) As String
    Dim strCellValue As String
    Dim i As Integer, arrWords As Variant
    
    strCellValue = rngCell.Text
    
    arrWords = Split(varWords, ";")
    For i = 0 To UBound(arrWords)
        strCellValue = Replace(strCellValue, arrWords(i), UCase(arrWords(i)))
    Next i
    
    Big = strCellValue
    
End Function
Wenn in Zelle A1 dein Text steht, schreibst du einfach folgende Formel in deine Zelle:
=big(A1;"Samstag;Sonntag")

Viele Grüße

Martin


  

Betrifft: mit VBA bearbeiten und verändern von: Matthias L
Geschrieben am: 29.09.2014 11:05:33

Hallo

Hier mal noch eine weitere VBA-Variante

Option Explicit
Sub wechseln()
Dim MyTxT$
With Application.WorksheetFunction
 MyTxT = .Substitute(.Substitute(Range("B3"), "Samstag", "SAMSTAG"), "Sonntag", "SONNTAG")
End With
Range("B5") = MyTxT
End Sub
Gruß Matthias


 

Beiträge aus den Excel-Beispielen zum Thema "Zelleninhalt mit VBA bearbeiten und verändern"