Thema Datum  Von Nutzer Rating
Antwort
15.04.2014 10:15:38 Corina
NotSolved
15.04.2014 12:54:44 Holger
NotSolved
15.04.2014 13:32:53 Gast15716
NotSolved
15.04.2014 18:38:46 Gast68648
NotSolved
15.04.2014 18:42:31 Gast74327
NotSolved
15.04.2014 18:57:47 Gast86647
NotSolved
16.04.2014 09:08:55 Corina
NotSolved
16.04.2014 09:10:04 Corina
NotSolved
16.04.2014 11:05:14 Gast61557
NotSolved
16.04.2014 11:06:26 Gast56441
NotSolved
16.04.2014 13:40:21 Corina
NotSolved
17.04.2014 10:39:35 Gast28994
NotSolved
17.04.2014 10:39:52 Gast89598
*****
Solved
17.04.2014 14:46:07 Corina
NotSolved
17.04.2014 15:28:44 Gast83463
NotSolved
17.04.2014 16:47:15 Corina
NotSolved
Rot Rot Abgleich CheckBox-Namen mit Spalteneinträge
17.04.2014 17:31:38 Gast83279
NotSolved

Ansicht des Beitrags:
Von:
Gast83279
Datum:
17.04.2014 17:31:38
Views:
1850
Rating: Antwort:
  Ja
Thema:
Abgleich CheckBox-Namen mit Spalteneinträge

Zu 2): Woher weiß ich denn welche Methoden existieren? Bzw. wo kann ich mir das ausgeben lassen?

Zum einen gibt es den Objektkatalog. Diesen kann man, wärend man sich im VBA-Editor befindet, mit der F2-Taste aufrufen (alterantiv unter Menü Ansicht -> Objektkatalog) und darin browsen bzw. etwas über eine Eingabe suchen (mit F1 bekommt man zur aktuellen Auswahl Hilfe angezeigt).

Manchmal geben Funktionen/Methoden auch nur den Datentyp Objekt zurück. Man kann mit TypeName(VarName) oder auch mit VarType(VarName) deren Typ herausfinden. Hier bietet es sich oft an in dieser Zeile einen Haltepunkt zu setzen und sich dann im Direktbereich diesen ausgeben zu lassen - der Direktbereich ist, wie viele nicht wissen, nicht nur Ausgabe, sondern dient auch der Eingabe von Anweisungen.

Beispiel, man hat folgendn Code geschrieben:

Sub test()
  
  Dim obj As Object
  
  Set obj = ActiveSheet
  
  If Not obj Is Nothing Then '<- Haltepunkt in dieser Zeile setzen
    'mach irgendwas...
  End If
  
End Sub

Nun hat man den Haltepunkt gesetzt und führt das Makro aus. Er bleibt in besagter Zeile stehen. Wir wollen jetzt wissen welchen Objekt-Datentyp obj hat.

Also gibt man im Direktbereich (ggf. mit STRG+G einblenden, od. Menü Ansicht -> Direktfenster) folgendes ein und bestätigt die Eingabe (wie gewohnt mit Return-Taste):

?TypeName(obj)

Eine Zeile darunter schreibt er dann das Ergebnis hin. In diesem kurzen Beispiel wird es entweder "Worksheet", "Chart" oder im seltensten Fall Nothing sein (Nothing begegnet man an der Stelle idR. nur wenn man AddIns schreibt).

 

Dir ist beim Tippen bestimmt auch schon aufgefallen das wenn du nach einer Variable - welche ein Objekttyp darstellt, z.B. Range - einen Punkt setzt, dir eine Liste mit Elementen zur Auswahl angeboten wird (gleichzeitig verbirgt sich eine Autovervollständigung dahinter, für die Tippfaulen - ich bin faul!!). Diese eingeblendete Liste läuft unter dem Begriff "IntelliSense". Auch wärend du weiter tippst zeigt es dir verschiedene Informationen an (erwartete Parameternamen der Funktion, deren jeweiligen Datentypen, den Datentyp der Rückgabe der Funktion). Auch das hilft ungemein dabei den Überblick über die Datentypen zu behalten (eines der wichtigsten Dinge beim Programmieren).

Dieses IntelliSense funktioniert aber nur solange wie der Datentyp der jeweils letzten Referenz (am einfachsten gesagt der Variable selbst) bekannt ist (darum u.a. der "Spaß" mit den Dim-Anweisungen). Nur dann kann dieses IntelliSense wirklich intelligent (=Intelli) seine Sinne (=Sense) spielen lassen. ;o)

 

Jetzt rutsch ich schon ins Debugging ab, worüber es sich noch einiges sagen ließe, aber das soll es an der Stelle mal gewesen sein. Das wichtigste wurde erwähnt.

 

Zu 3): Habe quasi versucht auf einem toten Pferd zu reiten :)

So kann man das auch formulieren. ;-)

 

Gruß


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
15.04.2014 10:15:38 Corina
NotSolved
15.04.2014 12:54:44 Holger
NotSolved
15.04.2014 13:32:53 Gast15716
NotSolved
15.04.2014 18:38:46 Gast68648
NotSolved
15.04.2014 18:42:31 Gast74327
NotSolved
15.04.2014 18:57:47 Gast86647
NotSolved
16.04.2014 09:08:55 Corina
NotSolved
16.04.2014 09:10:04 Corina
NotSolved
16.04.2014 11:05:14 Gast61557
NotSolved
16.04.2014 11:06:26 Gast56441
NotSolved
16.04.2014 13:40:21 Corina
NotSolved
17.04.2014 10:39:35 Gast28994
NotSolved
17.04.2014 10:39:52 Gast89598
*****
Solved
17.04.2014 14:46:07 Corina
NotSolved
17.04.2014 15:28:44 Gast83463
NotSolved
17.04.2014 16:47:15 Corina
NotSolved
Rot Rot Abgleich CheckBox-Namen mit Spalteneinträge
17.04.2014 17:31:38 Gast83279
NotSolved