Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
888to892
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
888to892
888to892
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro

Makro
18.07.2007 09:30:00
Johann
Hallo Excelfreunde,
ich suche über folgendes Makro im geöffneten Blatt in einer Spalte ( hier AH) nach einer bestimmten
IdentNummer.
Kann ich nach dieser Identnummer auch auf einem Blatt suchen, das nicht geöffnet ist oder ist dies grundsätzlich nicht möglich ? Wenn ja, was muß ich ändern ?
Hier das Makro:

Sub FindIdent(IdentNr As String)
Dim Treffer As Range
Dim Zeile As Long
Columns("AH:AH").Select
Range("AH69").Activate
Set Treffer2 = Selection.Find(What:=IdentNr, After:=ActiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False)
If Not Treffer2 Is Nothing Then
Treffer2.Activate
End If
Set Treffer = Application.ActiveCell
If Not Treffer2 Is Nothing Then
Zeile = Treffer.Row
CopyValues (Zeile)
Makro1 (Range("R69").Value)
Else
Range("G15") = Worksheets("Translation2").Range("A24").Value
Makro1 (Range("R74").Value)
End If
Range("A1").Select
End Sub


Gruß
John

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro
18.07.2007 09:53:13
Rudi
Hallo,
auf einem Blatt in der gleichen Mappe?
Etwa so:

Sub FindIdent(IdentNr As String)
Dim Treffer As Range
Dim Zeile As Long
Set Treffer2 = Worksheets("identnummern").Range("AH:AH").Find(What:=IdentNr, After:= _
ActiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False)
If Not Treffer2 Is Nothing Then
Zeile = Treffer2.Row
CopyValues (Zeile) 'an CopyValues musst wahrscheinlich auch was ändern
Makro1 (Range("R69").Value)
Else
Range("G15") = Worksheets("Translation2").Range("A24").Value
Makro1 (Range("R74").Value)
End If
Range("A1").Select
End Sub


Select und Activate sind zu 99% überflüssig.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: Makro
18.07.2007 12:21:00
Johann
Hallo Rudi,
funktioniert leider nicht
Bekomme folgende Fehlermeldung:
Index außerhalb des gültigen Bereichs
Fehleranzeige bei:
Set Treffer2= .........
Kannst Du mir weiterhelfen ?
Gruß
John

AW: Makro
18.07.2007 12:52:00
Rudi
Hallo,
du musst natürlich Identnummern durch den Namen des Sheets ersetzen, in dem du suchen willst.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: Makro
18.07.2007 13:08:29
Johann
Hallo Rudi,
hab ich natürlich gemacht.
Funktioniert nicht.
Gruß
John

AW: Makro
18.07.2007 12:55:00
Peter
Hallo John,
dann stimmt Worksheets("identnummern") nicht, dein Blatt heißt anders, hat noch ein Leerzeichen vorn oder hinten dran, aber jedenfalls falscher Blattname ist die Ursache für den Fehler.
Gruß Peter

Anzeige
AW: Makro
18.07.2007 13:14:00
Johann
Hallo Peter,
Bezeichnung ist richtig, hab´s nochmal eingegeben.
Jetzt bekomme ich die Fehlermeldung: "Typen unverträglich" ?
Gruß
John

AW: Makro
19.07.2007 16:03:00
Peter
Hallo John,
Rudis Makro hat die Variable Treffer definiert, verwendet später aber Treffer2
Füge als erste Zeile im Modul mal: Option Explicit ein und gehe dann auf Debuggen und dort auf Kompilieren von VBAProjekt und prüfe damit, ob alles richtig kompilierbar ist.
Ich habe nur Office 2000, kann deshalb diverse Optionen aus Excel 2003 nicht anwenden und damit das Makro nicht nachvollziehen.
Gruß Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige