Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1236to1240
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
Inhaltsverzeichnis

Name in Blatt prfen

Name in Blatt prfen
Markus
Hallo,
ich möchte per VBA prüfen ob in der Tabelle1 der Name "DatenA" existiert.
Markus
AW: Name in Blatt prfen
11.11.2011 08:04:02
hary
Hallo Markus
was meinst Du mit: der Name "DatenA" existiert?
Ist DatenA der Text in einer Zelle oder ein benannter Bereich.
Falls Text in einer Zelle.

If WorksheetFunction.CountIf(Range("A:IV"), "DatenA") = 1 Then MsgBox "ja"

gruss hary
Sicherer ist: >= 1                  o.w.T.
11.11.2011 08:12:49
Reinhard

Ein Zei. weniger >0          ;-)      o.w.T. Gruss
11.11.2011 08:18:59
hary
.
viiiiiel zu lang, m.T.
11.11.2011 13:07:38
Reinhard
Hallo hary,
If Application.CountIf(Range("A:IV"), "DatenA") > 0 Then MsgBox "ja"
Und nu? :-))
Gruß
Reinhard
AW: viiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiel zu lang
11.11.2011 13:19:38
Rudi
Hallo,
da geht noch was.
If Application.CountIf(Cells, "DatenA") Then MsgBox "ja"
Gruß
Rudi
nochmal 3 weg :-)
11.11.2011 13:45:09
Reinhard
Hallo Rudi,
If Application.CountIf(Cells, "DatenA") Then MsgBox "ja"
If Not IsEmpty(Cells.Find("DatenA")) Then MsgBox "ja"
Gruß
Reinhard
Anzeige
dafür auch falsch. Immer ja. owT
11.11.2011 13:51:38
Rudi
Okay okay, klappt nur zu 50%
11.11.2011 13:52:56
Reinhard
Hallo Rudi,
If Not IsEmpty(Cells.Find("DatenA")) Then MsgBox "ja"
zeigt zumindestens dann richtig an wenn DatenA auch vorhanden ist.
Wenn nicht zeigt sie falsch an :-(
Die Codezeile hat also die gleiche Wahrscheinlichkeit richtig anzuzeigen wie:
MsgBox "ja"
:-))
Gruß
Reinhard
Mit NAME meinst Du LOKALE BEREICHSNAME !?!
11.11.2011 13:40:26
NoNet
Hallo Markus,
die bisher geposteten Vorschläge prüfen, ob der TEXT "DatenA" im Tabellenblatt existiert, ich vermute jedoch, dass Du den definierten (Bereichs-)NAMEN meinst (also den, den man im Namensfeld oberhalb der Zelle A1 eingeben oder per Tastenkombination Strg+F3 definieren kann) !?!
Das kann man mit folgendem Code prüfen :
Sub LOKALEN_Namen_Finden()
'Sucht einen LOKAL definierten Namen im aktuelle Tabellenblatt
Dim objName As Object, strName As String
strName = "DatenA" 'der zu suchende (definierte) NAME
If ActiveSheet.Names.Count > 0 Then
On Error Resume Next
Set objName = ActiveSheet.Names(strName)
If objName Is Nothing Then
MsgBox "Bereichsname '" & strName & "' existiert im aktuellen Blatt nicht !"
Else
MsgBox "Bereichsname '" & strName & _
"' ist im aktuellen Blatt definiert :!" & vbLf & vbLf & _
ActiveSheet.Names(strName).RefersToLocal, vbOKOnly, "Name gefunden"
End If
Else
MsgBox "Das aktuelle Tabellenblatt enthält keine lokalen Namen !"
End If
Set objName = Nothing
End Sub
Das Makro überprüft jedoch nur die LOKAL definierten Namen, also die, die im aktuellen Tabellenblatt gültig sind (so habe ich das verstanden) und nicht die GLOBALEN Namen der gesamten Mappe !
Gruß, NoNet
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige