Microsoft Excel

Herbers Excel/VBA-Archiv

Suchen und Ersätzen VBA

Betrifft: Suchen und Ersätzen VBA von: Riman
Geschrieben am: 02.10.2014 13:29:07

Hallo Leute,

ich habe eine Spalte C mit die Überschrieft "Betriebsystem"

Die Zellen sind mit Inhalte wie, Windows 7 oder Windows XP Professional Service Pack...

Ich möchte in der Spalte C, dass die Inhalte abgekürzt werden...aus Windows soll Win umgeändert werden...oder Professional= Pro.

Ich habe mit dem Macrorecorder die Funktion Suchen und Ersetzen genommen...ich suche im Spalte C Windows...erserzt soll es durch Win...

Aber ich möchte es einfach haben...ganz normal VBA codiert...

Danke

Macrorecorder:

Sub Beschreibung_Betriebssysteme_Abkürzen()
'
' Beschreibung_Betriebssysteme_Abkürzen Makro
'

'
    Columns("C:C").Select
    Cells.Replace What:="Windows", Replacement:="Win", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Cells.Replace What:="Professional", Replacement:="Pro", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Cells.Replace What:="Service Pack", Replacement:="SP", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Cells.Find(What:="Workstation", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Cells.Replace What:="Workstation", Replacement:="W", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    ActiveWindow.ScrollRow = 2
    ActiveWindow.ScrollRow = 3
    ActiveWindow.ScrollRow = 4
    ActiveWindow.ScrollRow = 5
    ActiveWindow.ScrollRow = 6
.
.
.
.


End Sub

  

Betrifft: AW: Suchen und Ersätzen VBA von: Daniel
Geschrieben am: 02.10.2014 14:22:11

Hi

sieht soweit korrekt aus und es ist auch "ganz normal VBA codiert", nur dass du das Erstetzen mit dem ganzen Zellbereich (Cells.Replace) durchführst und nicht nur mit der Spalte C.

so bearbeitest du nur die Spalte C (für die andern Ersetzungen dann enstprechend Ergänzen)

Columns(3).Replace What:="Windows", Replacement:="Win", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Gruß Daniel


 

Beiträge aus den Excel-Beispielen zum Thema "Suchen und Ersätzen VBA"