Microsoft Excel

Herbers Excel/VBA-Archiv

Anpassungen im Text | Herbers Excel-Forum


Betrifft: Anpassungen im Text von: Hugo
Geschrieben am: 04.12.2009 11:07:58

Hallo Zäme

In meiner Exceldatei habe ich Zellen mit folgendem "Wert":

Zahlungen\system\Scanning\Regression\Applikation_Kudo-AV\Einblatt_Express_Kudo-AV

Dieser Wert steht in vielen Zellen und auch in unterschiedlichen Zusammensetzungen.
Für gewisse Arbeiten (Import in ein anderes System) müsste ich nun in all den Zellen jeweils den Wert (Fett) ändern.

Beispiel für den Wechsel:
Zahlungen\system\Scanning\Regression\Applikation_DEPF\Einblatt_Express_DEPF

Ich stelle mir vor ich habe an einem Ort meine Werte die ich auswählen kann. Dann drücke ich einen Knopf und all die (fetten) Werte werden mit dem Ausgewählten ersetzt.

Hat jemand eine Idee wie ich das einfach bewerkstelligen kann?

PS: eine Beispieldatei habe ich hochgeladen
https://www.herber.de/bbs/user/66366.xls

Danke für eine Idee.

Gruss
Hugo

  

Betrifft: AW: Anpassungen im Text von: Tino
Geschrieben am: 04.12.2009 11:29:57

Hallo,
meinst Du so?

https://www.herber.de/bbs/user/66368.xls

Gruß Tino


  

Betrifft: AW: Anpassungen im Text von: Hugo
Geschrieben am: 04.12.2009 12:46:56

Hallo Tino

Danke für den Tipp. Leider kann ich die Datei nicht öffnen/speichern. Es gibt mir eine Fehlermeldung.
Ansonsten würde mir dein Ansatz gut gefallen

Gruss
Hugo


  

Betrifft: ich kann die Datei speichern? von: Tino
Geschrieben am: 04.12.2009 13:10:33

Hallo,
hast Du schreibrechte wo Du speichern möchtest?

Gruß Tino


  

Betrifft: Bearbeiten - Ersetzen von: Erich G.
Geschrieben am: 04.12.2009 11:44:49

Hi Ronald, (dein Name steht in den Eigenschaften der Mappe - warum jetzt Hugo statt Ron?)

am einfachsten ginge das wohl über Bearbeiten - Ersetzen. Was spricht dagegen?

@Tino: Was, wenn in dem Bereich auch mal Formeln stehen? Die sind dann futsch!

Mit Makro vielleicht auch so:

Sub Makro1()
   With Sheets("Tabelle1")
      Cells.Replace What:=.Range("D1"), Replacement:=.Range("D2"), _
         LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
         SearchFormat:=False, ReplaceFormat:=False
   End With
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: ja was wäre wenn? von: Tino
Geschrieben am: 04.12.2009 12:38:48

Hallo,
kann nur Hugo beantworten.

Die Suchen Ersetzen Funktion von Excel verwende ich in VBA so gut wie nicht mehr,
weil man suchen und ersetzen in gesamter Arbeitsmappe im VBA nicht zurückstellen kann.
(ist ein ungutes Gefühl im Bauch)
Glaube Du hast dies mal sogar festgestellt und hier im Forum geschrieben.

Gruß Tino


  

Betrifft: AW: ja was wäre wenn? von: Hugo
Geschrieben am: 04.12.2009 13:12:42

Hallo Tino, Hallo Erich

Jetzt bin ich im Clintsch. Ich würde pro Tabellenblatt jeweils nur den Text anpassen. Grund die Daten (Werte) in den einzelnen Tabellenblätter können unterschiedlich sein. Das heisst für mich aber der Einbau der Lösung in jedes Tabellenblatt. Ist dies problematisch?

Ansonsten habe ich den Code von Erich mal getestet und für ein Tabellenblatt funktioniert es sehr gut.

Was raten mir die Experten? Welche Lösung macht Sinn?

PS: die Lösung von Tino konnte ich noch nicht abschliessend anschauen, da die angehängte Datei beim öffnen auf Fehler kommt (bereits gemeldet).

@Tino: ja dort habe ich Schreibrechte
@Erich: Hugo ist seit langem mein Excelforumsname

Gruss und an euch beide und Danke
Hugo


  

Betrifft: AW: ja was wäre wenn? von: Erich G.
Geschrieben am: 04.12.2009 16:50:25

Hi Ron,
wenn du im Makro die With-Klammer anders festlegst, kannst du das Makro für alle Blätter verwenden,
solange sich die beiden Werte (alter und neuer Wert fürs Ersetzen) in D1 und D2 befinden:

Sub Makro1()
   Dim rngX As Range

   With ActiveSheet
      Set rngX = .Range("a1").Find("a")
      Cells.Replace What:=.Range("D1"), Replacement:=.Range("D2"), _
         LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
         SearchFormat:=False, ReplaceFormat:=False
   End With
End Sub
Zu deinem "Excelforumsnamen" (nette Wortschöpfung) schau bitte mal in die Forums-FAQ.

Zitat:
NickNames sind nicht erwünscht.
Diese Frager werden bei der Beantwortung nicht gerade bevorzugt behandelt.
Nenne Deinen Vornamen, damit man Dich ansprechen kann.
Damit ist NICHT dein Username gemeint - der kann gern Hugo oder sonstwas sein.

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: OT: So eng u.bürokratisch würde ich die FAQ... von: Luc:-?
Geschrieben am: 04.12.2009 17:43:18

...nicht auslegen, Erich,
denkste denn ick heiße Luc? Oder Walter nur WF usw... Hptsache Vorname und nicht so etwas wie Meerschweinchen oder Excelkannibale... ;-)
Und das mit der nicht bevorzugten Behdl ist auch nur ein Wunschtraum... Schnell kann daraus so etwas wdn wie von einem allseits bekannten InAllenForenVielAntworter in seinem „Heimatforum“ praktiziert...
Das erinnert mich immer an den ungarischen Film über Camper, die unter der „richtigen“ Führung schließlich anfingen im Urlaub bzw am WE ein Schwimmbad zu bauen, weil das Baden in Fluss und See für die Kinder zu gefährlich sei usw... Soll ja auch Strand-Pools geben (auch, wo's keine Haie gibt!)... ;-)
Gruß Luc :-?


  

Betrifft: ...und ich heiße weder NoNet noch NoNett ;-) _oT von: NoNet
Geschrieben am: 04.12.2009 21:15:25

_oT


  

Betrifft: wer kann diesen Fehler nachvollziehen von: Tino
Geschrieben am: 05.12.2009 09:45:18

Hallo,
habe die Version hier mal als xlsm und als xls Datei.

https://www.herber.de/bbs/user/66381.xlsm

https://www.herber.de/bbs/user/66380.xls


@Hugo, was für einen Fehler bekommst Du?

Gruß Tino


  

Betrifft: @Tino: geht doch von: Erich G.
Geschrieben am: 04.12.2009 16:41:16

Hi Tino,
das Zurückstellen geht - wie du schreibst - nicht in der Replace-Methode.

Aber es geht mittels eines vorangestellten Find:

Sub Makro1()
   Dim rngX As Range

   With Sheets("Tabelle1")
      Set rngX = .Range("a1").Find("a")
      Cells.Replace What:=.Range("D1"), Replacement:=.Range("D2"), _
         LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
         SearchFormat:=False, ReplaceFormat:=False
   End With
End Sub
Schau mal hier:
https://www.herber.de/forum/archiv/1000to1004/t1001685.htm#1001755
http://www.online-excel.de/fom/fo_read.php?f=1&bzh=-1&h=23044&ao=1

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: stimmt von: Tino
Geschrieben am: 05.12.2009 09:39:34

Hallo,
eine vorangestellte suche setzt dies zurück, danke für die Info.


Gruß Tino


  

Betrifft: AW: stimmt von: Hugo
Geschrieben am: 07.12.2009 10:16:06

Hallo Tino

Jetzt funktioniert es mit der dieser Lösung.

Danke und Gruss
Hugo alias Ron