Microsoft Excel

Herbers Excel/VBA-Archiv

Zellbereiche in Mappe ändern | Herbers Excel-Forum


Betrifft: Zellbereiche in Mappe ändern von: Bruno Kohler
Geschrieben am: 21.10.2008 10:59:55

Guten Tag

In einer Arbeitsmappe mit 18 Tabellen sollen in allen nicht leeren Zellen der Spalten I die Werte (wo vorhanden) durch Füllzeichen «. . . . . . .» für spätere manuelle Einträge in einer Hardcopie ersetzt werden. Eine aufwändige Arbeit, die sicher ein entsprechender VBA-Code im Sekunden erledigt. Kann mir jemand weiterhelfen?

Mit bestem Dank zum voraus und Gruss, Bruno

  

Betrifft: AW: Zellbereiche in Mappe ändern von: Beverly
Geschrieben am: 21.10.2008 11:19:58

Hi Bruno,

verwende Suchen und Ersetzen bei markierter Spalte I. Suchen nach: *~ und Ersetzen durch: <<...>>.

Mittels Code über alle Tabellenblätter

Sub ersetzen()
   Dim wsTabelle As Worksheet
   For Each wsTabelle In Worksheets
      wsTabelle.Columns("I").Replace What:="*~", Replacement:="<<....>>", LookAt:=xlPart, _
        SearchOrder:=xlByRows
   Next wsTabelle
End Sub



GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Zellbereiche in Mappe ändern von: Bruno Kohler
Geschrieben am: 21.10.2008 11:45:04

Besten Dank auch an Dich, Karin. Mit Deinem Code läuft das Ganze wesentlich schneller ab!

Gruss, Bruno


  

Betrifft: AW: Zellbereiche in Mappe ändern von: Bruno Kohler
Geschrieben am: 21.10.2008 16:26:54

Guten Abend Karin

Noch eine Variantenfrage zu Deinem Code:

Ich möchte die Zelländerung beschränken auf die Tabellenblätter > "T_50" und < "T_999", meine Bemühungen haben aber bisher leider nicht zum Ziel geführt. Kannst Du mir nochmals weiterhelfen?

Besten Dank zum Voraus und einen schönen Abend noch,

Bruno


  

Betrifft: AW: Zellbereiche in Mappe ändern von: Beverly
Geschrieben am: 21.10.2008 17:28:08

Hi Bruno,

ungetestet:

Sub ersetzen()
   Dim wsTabelle As Worksheet
   For Each wsTabelle In Worksheets
      On Error Resume Next
      If CInt(Mid(wsTabelle.Name, 3)) > 50 And CInt(Mid(wsTabelle.Name, 3)) < 999 Then
        If Err = 0 Then
            wsTabelle.Columns("I").Replace What:="*~", Replacement:="<<....>>", LookAt:=xlPart,  _
_
            SearchOrder:=xlByRows
        End If
      End If
      On Error GoTo 0
   Next wsTabelle
End Sub



GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Zellbereiche in Mappe ändern von: Bruno
Geschrieben am: 21.10.2008 21:16:13

Ein herzliches Danke, der Code funktioniert auf Anhieb!!

Gruss und gute Nacht, Bruno


  

Betrifft: AW: Zellbereiche in Mappe ändern von: Matthias L
Geschrieben am: 21.10.2008 11:20:04

Hallo

in ein Modul

bitte nur mit einer Kopie testen !!

Option Explicit

Sub lauf()
Dim x As Long, Y As Long
For Y = 1 To Worksheets.Count
 For x = 1 To 65536
  If Not IsEmpty(Worksheets(Y).Cells(x, 9)) Then Worksheets(Y).Cells(x, 9).Value = ">>"
 Next x
Next Y
End Sub



wird aber bei 18 Tabellen einen Moment dauern.

Gruß Matthias


  

Betrifft: AW: Zellbereiche in Mappe ändern von: Bruno Kohler
Geschrieben am: 21.10.2008 11:35:04

Danke Matthias, klappt wie gewünscht!!

Gruss, Bruno


Beiträge aus den Excel-Beispielen zum Thema "Zellbereiche in Mappe ändern"