Anzeige
Archiv - Navigation
420to424
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
420to424
420to424
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Benannte Zellen abfragen

Benannte Zellen abfragen
Herbert
Liebe Forumler
Heute mein nächstes "Problem"
Ich habe in mehreren Mappen je eine benannte Zelle mit dem Namen "Nummer" (für Auftragsnummern, die in den verschiedenen Mappen in jeweils andere Zellen eingegeben werden müssen)
Es können für diese unterschiedlichen Mappen mehrere Makros gestartet werden. Wie stelle ich es an, wenn in einer Mappe die benannte Zelle nicht vorhanden ist, daß das Makro beendet wird?
if then exit sub ist mit klar, aber wie formuliere ich die Abfrage:
wenn die benannte Zelle "Nummer" nicht vorhanden ist dann - exit sub
Danke Euch im Voraus
Herbert

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Benannte Zellen abfragen
Matthias
Hallo Herbert,
folgende Funktion gibt Wahr zurück, wenn der Name in der angegebenen Mappe existiert, und Falsch, wenn nicht.

Function HatNamen(na As String, Optional wb) As Boolean
Dim i  As Integer
Dim found As Boolean
If IsMissing(wb) Then
Set wb = ActiveWorkbook
End If
found = False
With wb
For i = 1 To .Names.Count
If .Names(i).Name = na Then
found = True
Exit For
End If
Next i
End With
HatNamen = found
End Function

Gruß,
Matthias
Benannte Zellen abfragen - das hift nicht
Herbert
Hallo Matthias
Danke für Deine Antwort, aber da komme ich nicht weiter. Hier ein Ausschnitt aus meinem Code:
Ich wähle die Zelle "Nummer" aus, das geht. In der Zelle steht eine Zahl im Format 101/04. Die löse ich auf um den Speichernamen zu erstellen (101 04.xls), das funktioniert alles. Das gleiche Makro wird aber auch bei Dateien verwendet, in denen es diese benannte Zelle nicht gibt. Es geht also nur um die 2. Zeile in diesem Beispiel. Bei einer Sicherheitsroutine (on error goto, bzw. on error resume next) steigt der code immer aus!
Range("Nummer").Select
If ActiveCell.Name = "Nummer" Then
spname = Range("Nummer").Value
nr = Mid(spname, 1, 3)
jahr = Mid(spname, 5, 2)
ActiveWorkbook.SaveAs Filename:="C:\Temp\" & nr & " " & jahr
ActiveWorkbook.Close
Else
Application.DisplayAlerts = False
ActiveWorkbook.Close
Exit Sub
End If
Vielleicht kannst Du mir helfen, oder jemand anderes hat eine Idee.
Aber jetzt gute Nacht, bis Morgen
Danke einstweilen
Herbert
Anzeige
AW: Benannte Zellen abfragen - das hift nicht
Matthias
Hallo Herbert,
und wenn du die Funktion dann so verwendest:
If HatNamen("Nummer") Then
spname = Range("Nummer").Value
nr = Mid(spname, 1, 3)
jahr = Mid(spname, 5, 2)
ActiveWorkbook.SaveAs Filename:="C:\Temp\" & nr & " " & jahr
ActiveWorkbook.Close
Else
ActiveWorkbook.Close SaveChanges:=False
Exit Sub
End If

klappt das dann nicht?
Grüße,
Matthias
Klasse das funktioniert!!!!!!!!!!!!!!1
Herbert
Hallo Matthias
Von wegen ins Bett!
Die Neugier hat mich wachgehalten und zum rumprobieren animiert, hab bis jetzt wenig mit Function gearbeitet, es funzt genau so wie ich´s wollte.
Vielen Dank
Herbert (die Nacht ist gerettet)
Anzeige
Danke für die Rückmeldung! - o.T.
01.05.2004 09:26:04
Matthias
:-)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige