Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Abfrage ob Zellname vorhanden | Herbers Excel-Forum


Betrifft: Abfrage ob Zellname vorhanden von: Martin Zundel
Geschrieben am: 22.11.2009 14:49:59

Hallo zusammen,

ich müsste bestimmen ob ein Zellname bereits vergeben ist, wenn ja dann werden die Zellen darunter ausgefüllt wenn nein wird weitergesprungen. Gibt es dafür einen Code??
Dabei wollte ich vermeiden mit den error Handlern rumzubasteln. Also einfach davor auf on error goto weiter usw. Das funktioniert ja dann doch ehe sekten

Danke und Gruß Martin

  

Betrifft: AW: Abfrage ob Zellname vorhanden von: Josef Ehrensberger
Geschrieben am: 22.11.2009 14:57:44

Hallo Martin,

' **********************************************************************
' Modul: Modul4 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub test()
  Dim rng As Range
  Dim strName As String
  
  strName = "testname"
  
  If nameExist(strName) Then Set rng = Range(strName)
  
End Sub

Function nameExist(ByVal myName As String) As Boolean
  Dim nName As name
  
  For Each nName In ThisWorkbook.Names
    If nName.name = myName Then
      nameExist = True
      Exit For
    End If
  Next
End Function



Gruß Sepp



  

Betrifft: AW: Abfrage ob Zellname vorhanden von: Martin Zundel
Geschrieben am: 22.11.2009 15:11:12

Hallo Sepp,

danke schon einmal werde ich gleich mal probieren.


Gruß MArtin


  

Betrifft: AW: Abfrage ob Zellname vorhanden von: Jean Gitanes
Geschrieben am: 22.11.2009 15:23:58

Hallo Sepp,

wie müsste man das Programm ergänzen, wenn der Bereichsname vergeben ist

der Bereich markiert werden soll
und die Summe festgestellt werden soll?

Gruß
Jean


  

Betrifft: AW: Abfrage ob Zellname vorhanden von: Josef Ehrensberger
Geschrieben am: 22.11.2009 16:01:41

Hallo Jean,

' **********************************************************************
' Modul: Modul4 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub test()
  Dim rng As Range
  Dim strName As String
  
  strName = "testname"
  
  If nameExist(strName) Then
    Set rng = Range(strName)
  Else
    Set rng = Nothing
  End If
  
  If Not rng Is Nothing Then
    rng.Select 'unnötig!
    MsgBox Application.Sum(rng)
  End If
  
End Sub

Function nameExist(ByVal myName As String) As Boolean
  Dim nName As name
  
  For Each nName In ThisWorkbook.Names
    If nName.name = myName Then
      nameExist = True
      Exit For
    End If
  Next
End Function



Gruß Sepp



  

Betrifft: AW: Abfrage ob Zellname vorhanden von: Jean Gitanes
Geschrieben am: 22.11.2009 17:08:05

Hallo Sepp,

ja, so klappt es perfekt. Vielen Dank für Deine Lösung.

Gruß
Jean


  

Betrifft: AW: Abfrage ob Zellname vorhanden von: Daniel
Geschrieben am: 22.11.2009 15:58:46

Hi
also in diesem Fall finde ich den Error-Handler gar nicht so schlecht, damit kann man das ganze ja recht einfach programmieren.
man muss halt darauf achten, nur denjenigen Codebereich zu kapseln, in dem der entsprechende Fehler im normalen Programmablauf auch vorkommen darf, dann passiert da auch nichts schlimmes:

Sub test()
Dim rng As Range

Set rng = Nothing
On Error Resume Next
Set rng = Range("Klaus")
On Error GoTo 0

If rng Is Nothing Then
    MsgBox "Zellbereich Klaus existiert nicht"
Else
    MsgBox "Zellbereich Klaus existiert"
End If
End Sub
außerdem muss man die Range-Variable, die man zum prüfen verwendet vorher auf NOTHING setzen, sonst bleibt deren alter wert erhalten.

Gruß, Daniel


Beiträge aus den Excel-Beispielen zum Thema "Abfrage ob Zellname vorhanden"