Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
728to732
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
728to732
728to732
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Suchen und Ersetzen
09.02.2006 15:53:10
Mikey
Hallo Excelfreunde,
ich hab ein Problem und kann es ohne eure Hilfe nicht lösen.
In meiner Datei (siehe Anhang)
https://www.herber.de/bbs/user/30833.xls
gebe ich im Tabellenblatt "Eingabemaske" eine alte Materialnr., eine neue Materialnr.,und einen Preis ein.
Nun möchte ich das ein Makro in dem Tabellenblatt "Stückliste" die alte Materialnr. in der "Spalte G" sucht und mit der neuen Materialnr. ersetzt. Gleichzeitig soll aber auch der neue Preis in der "Spalte N" eingetragen werden.
Wenn es dann noch möglich wäre soll in der geänderten Zeile in der "Spalte Q" ein "X" eingetragen werden.
Das ganze sollte so lange laufen bis mehr als 2 Leerzeilen in der "Spalte G" vorhanden sind.
Könnt Ihr mir da weiter helfen?
Ich Danke euch im voraus für eure Bemühungen!
Gruß
Mikey

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchen und Ersetzen
09.02.2006 16:53:16
Peter
Servus,
versuchs mal so.


Option Explicit
Const strB As String = "X"
Sub t()
Dim strAlt As String, strNeu As String
Dim dblPr As Double
Dim lngZ As Long
With Sheets("Eingabemaske")
    strAlt = .Range("F13")
    strNeu = .Range("F15")
    dblPr = .Range("F17")
End With
Do
    lngZ = Suchen(strAlt)
        If lngZ <> 0 Then
            With Sheets("Stückliste")
                .Range("G" & lngZ) = strNeu
                .Range("N" & lngZ) = dblPr
                .Range("Q" & lngZ) = strB
            End With
        Else
            MsgBox "Keine Nr. (mehr) gefunden !", vbCritical, "Vorgang abgebrochen !"
            Exit Do
        End If
Loop
End Sub
Private Function Suchen(AlteNr As String)
Dim myrng As Range
Dim lzeile As Long
With Sheets("Stückliste")
    lzeile = .Cells(.Rows.Count, 7).End(xlUp).Row
    Set myrng = .Range("G1:G" & lzeile)
End With
    On Error GoTo Fehler
Suchen = Application.WorksheetFunction.Match(AlteNr, myrng, 0)
Exit Function
Fehler:
Suchen = 0
End Function


MfG Peter
Anzeige
Viiiiielen DANK!!!
09.02.2006 17:07:39
Mikey
Hallo Peter,
vielen Dank für Deine schnelle Hilfe,
es klapp einwandfrei, ich bin begeistert.
DANKE DANKE DANKE
Gruß
Mikey

315 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige