Microsoft Excel

Herbers Excel/VBA-Archiv

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

xlCellTypeComments mit Select? vba-Hilfe gesucht

Betrifft: xlCellTypeComments mit Select? vba-Hilfe gesucht von: Reinhard
Geschrieben am: 26.08.2004 16:54:35

Hallo Excel-Freunde,
angenommen im Bereich A1:A10 hat eine Zelle einen Kommentar.
Wenn ich die Funktion "OhneSelect" in eine Zelle schreibe erhalte ich das falsche Ergebnis 10. Baue ich die Funktion "MitSelect" ein, erhalte ich korrekt 1.
Scheint also so zu sein dass man hier das "Select" benötigt, warum?

Weiterhin irritiert mich, dass wenn ich die in Excel direkt fehlerhafte Funktion "OhneSelect" per Sub aufrufe (siehe die Sub "Ohne") erhalte ich auch korrekt 1.
Auch da frag ich mich, warum das denn?

Danke für Informationen
Gruß
Reinhard

Function OhneSelect()
'Ergebnis ist 10
OhneSelect = Range("A1:A10").SpecialCells(xlCellTypeComments).Cells.Count
End Function

Function MitSelect()
'Ergebnis ist 1
Range("A1:A10").SpecialCells(xlCellTypeComments).Select
MitSelect = Selection.Cells.Count
End Function

Sub Ohne()
'Ergebnis ist 1
MsgBox OhneSelect()
End Sub

  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesucht von: Ulf
Geschrieben am: 26.08.2004 16:56:26

SpecialCells sind in Funktionen nicht zulässig!

Ulf


  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesuc von: Reinhard
Geschrieben am: 26.08.2004 17:12:56

Hallo Ulf,
dass Specialscells in Funktionen verboten sind wusste ich nicht, danke.
Aber würde mich schon interessieren warum Excel/vba so unterschiedlich reagiert, bzw warum es mittels Select und einer Sub doch klappt.
Deshalb Frage wieder offen.
Gruß
Reinhard


  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesuc von: Ulf
Geschrieben am: 26.08.2004 17:55:39

Überleg mal, welche SpecialCells es so gibt und was das besondere daran ist, dann kommst du selbst darauf, warum das Verhalten in Funktionen nicht genau definiert sein kann.

Ulf


  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesuc von: Reinhard
Geschrieben am: 27.08.2004 14:55:08

Hi Ulf,
danke an dich und Thomas für die Mühen.
Leider sind specialcells ein Punkt (unter vielen *seufz*) wo ich die Logik noch nicht verstanden habe. Passieren immer seltsame Dinge wenn ich sie benutze, also fast nie so wie ich es erhoffe :-(
Nja, Übung macht den Meister, irgendwann kapiere ich die:-)
Gruß
Reinhard


  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesucht von: Thomas Risi
Geschrieben am: 26.08.2004 17:16:52

Hallo Reinhard

Alle drei Varianten funktionieren bei mir (xlXP) ...


      
Option Explicit

Function OhneSelect1()
    OhneSelect1 = Range(
"A1:A10").SpecialCells(xlCellTypeComments).Cells.Count
End Function

Function OhneSelect2()
    OhneSelect2 = Range(
"A1:A10").SpecialCells(xlCellTypeComments).Count
End Function

Function MitSelect()
    Range(
"A1:A10").SpecialCells(xlCellTypeComments).Select
    MitSelect = Selection.Cells.Count
End Function

Sub TEST()
    MsgBox OhneSelect1
    MsgBox OhneSelect2
    MsgBox MitSelect
End Sub 


     Code eingefügt mit Syntaxhighlighter 3.0

Gruß
Thomas

Risi Thomas Softwareentwicklung




  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesuc von: Reinhard
Geschrieben am: 26.08.2004 17:29:49

Hallo Thomas,
ja, mit Sub aufgerufen funktieren sie.
Hast du denn mal die Funktionen "Ohneselect1" und "Ohneseelct2" in Excel als Funktion eingetragen? Klappten sie da auch?
Gruß
Reinhard


  


Betrifft: AW: xlCellTypeComments mit Select? vba-Hilfe gesuc von: Thomas Risi
Geschrieben am: 26.08.2004 17:46:27

Hallo Reinhard

Oh, das mit der Zelle hatte ich überlesen. Bei mir funzt da gar keine der angegebenen Varianten ...

Gruß
Thomas

Risi Thomas Softwareentwicklung




 

Beiträge aus den Excel-Beispielen zum Thema "xlCellTypeComments mit Select? vba-Hilfe gesucht"