Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
436to440
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
436to440
436to440
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Suchen mit Makro

Suchen mit Makro
04.06.2004 08:22:49
BerndR
Hallo*,
das folgende Makro lief einwandfrei unter der Excel-Version 8.0-Office 97 :

Sub auto_open()
Dim dlgAnswer As Integer
Worksheets("Tabelle1").Range("B:B").Select
dlgAnswer = Application.Dialogs(xlDialogFormulaFind) _
.Show(Arg1:="Ortsnamen eingeben", Arg6:=True, Arg3:=True)
'Arg1 kann zur Vorgabe eines Suchbegriffes verwendet werden;
'Arg6 aktiviert die Option für "Groß/Kleinschreibung"
End Sub

Wie muss ich es ändern, damit es unter Version 9.0-Office 2000 läuft ?
Gruss Bernd

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchen mit Makro
kdosi
Hallo Bernd,
kopiere den Code in Class Modul von ThisWorkbook, in den Event-Handler von dem Open Event, wie folgt. Gruss kdosi
Option Explicit

Private Sub Workbook_Open()
Dim dlgAnswer As Integer
Worksheets("Tabelle1").Range("B:B").Select
dlgAnswer = Application.Dialogs(xlDialogFormulaFind) _
.Show(Arg1:="Ortsnamen eingeben", Arg6:=True, Arg3:=True)
'Arg1 kann zur Vorgabe eines Suchbegriffes verwendet werden;
'Arg6 aktiviert die Option für "Groß/Kleinschreibung"
End Sub

AW: Suchen mit Makro
BerndR
Hallo kdosi,
so weit bin ich jetzt:
im Fenster für "Diese Arbeitsmappe":
Workbook Open
steht:
Option Explicit

Private Sub Workbook_Open()
Dim dlgAnswer As Integer
Worksheets("Tabelle1").Range("B:B").Select
dlgAnswer = Application.Dialogs(xlDialogFormulaFind) _
.Show(Arg1:="Ortsnamen eingeben", Arg6:=True, Arg3:=True)
'Arg1 kann zur Vorgabe eines Suchbegriffes verwendet werden;
'Arg6 aktiviert die Option für "Groß/Kleinschreibung"
End Sub

und beim Ausführen läuft das Programm hier auf Fehler:
Worksheets("Tabelle1").Range("B:B").Select
Was läuft falsch ?
Anzeige
AW: Suchen mit Makro
Gerd

Private Sub Workbook_Open()
Dim dlgAnswer As Integer
Worksheets("Tabelle1").Select
Range("B:B").Select
dlgAnswer = Application.Dialogs(xlDialogFormulaFind) _
.Show(Arg1:="Ortsnamen eingeben", Arg6:=True, Arg3:=True)
'Arg1 kann zur Vorgabe eines Suchbegriffes verwendet werden;
'Arg6 aktiviert die Option für "Groß/Kleinschreibung"
End Sub

Gerd
AW: Suchen mit Makro
BerndR
Hallo Gerd,
das Makro läuft jetzt, aber er sucht nicht nur in Spalte B, sondern in allen Spalten.
Bernd
AW: Suchen mit Makro
kdosi
Hallo Bernd, bist Du noch da?
Zu dem Fehler : was fuer eine Nummer hat der Fehler?
Existiert die Tabelle1?
Sind die Makros genehmigt? Oder wie hoch ist die Sicherheitsstufe?
Gruss kdosi
Anzeige
AW: Suchen mit Makro
Bernd
Hallo kdosi,
bin noch da !
Keine Fehler-Nummer, aber Makro sucht in allen Spalten; soll aber nur in "B"
Tabelle1 existiert
Makrosicherheit: niedrig
Besser vielleicht, ich schildere nur, was gewünscht:
Habe Tabelle mit ca 20.000 Datensätzen
Spalten: PLZ, Ortsname, Gemeindename, und noch mehr
Blinder Kollege soll für Orte zugehörige Daten (Gemeinde etc.) suchen, und zwar n u r in Spalte "B".
Zur Vereifachung für ihn soll der "Suchen-Dialog" nach Aufruf der Datei per Makro geöffnet werden, es soll der Vorbelegugstext "Ortsnamen eingeben" sein und aktiv "Gross/Kleinschreibung beachten" und "Gesamten Zellinhalt vergleichen.
(Mehr nicht ;-) )
Gruss Bernd
Anzeige
AW: Suchen mit Makro
Bernd
Hallo kdosi,
bin noch da !
Keine Fehler-Nummer, aber Makro sucht in allen Spalten; soll aber nur in "B"
Tabelle1 existiert
Makrosicherheit: niedrig
Besser vielleicht, ich schildere nur, was gewünscht:
Habe Tabelle mit ca 20.000 Datensätzen
Spalten: PLZ, Ortsname, Gemeindename, und noch mehr
Blinder Kollege soll für Orte zugehörige Daten (Gemeinde etc.) suchen, und zwar n u r in Spalte "B".
Zur Vereifachung für ihn soll der "Suchen-Dialog" nach Aufruf der Datei per Makro geöffnet werden, es soll der Vorbelegugstext "Ortsnamen eingeben" sein und aktiv "Gross/Kleinschreibung beachten" und "Gesamten Zellinhalt vergleichen.
(Mehr nicht ;-) )
Gruss Bernd
Anzeige
AW: Suchen mit Makro
kdosi
Hallo Bernd, versuch es mal mit diesem Code, funzt es? kdosi
Option Explicit
' xlDialogFormulaFind text, in_num, at_num, by_num, dir_num, match_case, match_byte
' Cells.Find(What:="Ortsnamen eingeben", After:=ActiveCell, LookIn:= _
' xlValues, LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:= _
' xlNext, MatchCase:=True).Activate

Private Sub Workbook_Open()
Dim dlg As Dialog
Columns(2).Select
Set dlg = Application.Dialogs(xlDialogFormulaFind)
Call dlg.Show(Arg1:="Ortsnamen eingeben", _
Arg4:=xlWhole, _
Arg5:=xlByColumns, _
Arg6:=xlNext, _
Arg7:=True)
End Sub

Anzeige
AW: Suchen mit Makro
kdosi
Bernd, ich muss jetzt gehen, falls Du mir schreiben willst : DDMAIL@seznam.cz
Sonst schoenes Wochenende noch :-), Gruss kdosi
AW: Suchen mit Makro
BerndR
Hallo kdosi,
leider nicht; es öffnet sich noch nicht einmal der Suchen-Dialog.
Meine VBA-Kenntnisse sind sehr gering.
Den Code habe ich kopiert in Tabelle1 unter (Allgemein) (Deklaration)
Ist das richtig?
Bernd
AW: Suchen mit Makro
BerndR
Hallo kdosi,
die muss ich mir zu Hause ansehen, weil mein AG diese Funktion gesperrt hat!
Zunächst mal Danke!
Gruss Bernd
Anzeige
AW: Suchen mit Makro
BerndR
Hallo kdosi,
danke für die Beispieldatei. Das Makro läuft, aber...
https://www.herber.de/bbs/user/7177.xls
Am Beispiel von "Elmshorn" ist zu sehen, dass die erste Fundstelle (und viele weitere) in Spalte E erscheint.
Es muss aber zuerst (immer) der Eintrag in Spalte B gefunden werden; dies kann ich nur erreichen, wenn ich den Schalter vor dem Suchgang auf "In Spalten" setze und das Feld "Ortsnamen eingeben" erneut markiere. Und genau dies soll das Makro machen. Kriegste das hin?
Das soll dann die letzte "Löcherung" sein.
Gruss Bernd
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige