Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

ist die Zelle auf dem Bildschirm sichtbar?

Forumthread: ist die Zelle auf dem Bildschirm sichtbar?

ist die Zelle auf dem Bildschirm sichtbar?
02.06.2003 15:16:51
ChristianG
Hallo Leute,

gibt es eine Möglichkeit per VBA herauszufinden, ob eine Zelle auf dem Bildschirm sichtbar ist oder gerade außerhalb des Bildschirms ist? (Nicht ausgeblendet, sondern aus dem Bildschirm gescrollt.)

Ein Makro erstellt mir eine Übersicht. Dabei werden nach und nach Spalten mit Werten gefüllt. Wenn jetzt eine Spalte nicht auf dem Bildschirm zu sehen ist, dann soll nach rechts gescrollt werden. Da der sichtbare Bereich ja von der Bildschirmauflösung, der Schriftgröße und Spaltenbreite usw. abhängt, bräuchte ich eine Funktion die mir zurückgibt, ob im Moment z. B. Spalte Q auf dem Bildschirm zu sehen ist oder nicht.

Ich hab´s mit ScrollIntoView ausprobiert, aber da kann ich ja nur den Abstand in Pixel und nicht die Spalten angeben.

Wäre schon, wenn trotz des Wetters noch jemand am PC sitzt und mir einen Tipp geben kann.

Danke im Voraus!

Gruß
Christian

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: ist die Zelle auf dem Bildschirm sichtbar?
02.06.2003 15:32:30
hans-jörg

Hallo Christian,
die einfachste Methode ist wenn du vor dem befüllemn der Spalte durch deinen code, die 1. zelle der spalte selektierst.
Range(xx).select oder ActiveCell.Select
dadurch wird automatisch der Bildschirm darauf eingestellt.
mit (Dim CellAdr as Range) CellAdr=ActiveCell.Address bekommst du die aktuelle Position in die Variable "CellAdr" geschrieben.

Hans-Jörg

Anzeige
Re: ist die Zelle auf dem Bildschirm sichtbar?
02.06.2003 15:52:23
ChristianG

Hi Hans-Jörg,

vielen Dank für die schnelle Hilfe. Klappt prima.
Ich hatte Select schon ganz aus den Gedanken gestrichen, aber für diesen Zweck kann man es doch sehr gut gebrauchen.

...aber ActiveCell.Select ist doch doppelt gemoppelt oder? ;-)

Also vielen Dank nochmal und einen schönen Tag.

Christian

Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Sichtbarkeit von Zellen im Excel-Bildschirm überprüfen


Schritt-für-Schritt-Anleitung

Um herauszufinden, ob eine Zelle auf dem Bildschirm sichtbar ist, kannst Du ein einfaches VBA-Makro verwenden. Folge diesen Schritten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub CheckCellVisibility()
       Dim CellAdr As Range
       Set CellAdr = Range("Q1") ' Beispiel: Zelle Q1, ändere dies nach Bedarf
    
       If Not Intersect(CellAdr, ActiveWindow.VisibleRange) Is Nothing Then
           MsgBox "Die Zelle " & CellAdr.Address & " ist sichtbar."
       Else
           MsgBox "Die Zelle " & CellAdr.Address & " ist nicht sichtbar."
       End If
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro aus, indem Du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Dieses Makro überprüft, ob die ausgewählte Zelle, in diesem Fall Q1, sichtbar ist. Es zeigt eine Nachricht an, die Dir darüber informiert, ob die Zelle auf dem Bildschirm sichtbar ist.


Häufige Fehler und Lösungen

Fehler: "Das Makro wird nicht ausgeführt."

  • Stelle sicher, dass Makros in Deinen Excel-Einstellungen aktiviert sind.

Fehler: "Die Zelle wird nicht angezeigt."

  • Überprüfe, ob Du die richtige Zelladresse im Code angegeben hast. Ändere Range("Q1") in die Zelle, die Du überprüfen möchtest.

Alternative Methoden

Eine alternative Methode ist die Verwendung der Select-Methode, um die Zelle zuerst auszuwählen und damit sicherzustellen, dass die Zelle auf dem Bildschirm sichtbar ist. Hier ist ein Beispiel:

Sub SelectAndCheck()
    Dim CellAdr As Range
    Set CellAdr = Range("Q1") ' Beispiel: Zelle Q1, ändere dies nach Bedarf
    CellAdr.Select
    MsgBox "Die Zelle " & CellAdr.Address & " wurde ausgewählt."
End Sub

Diese Methode sorgt dafür, dass die Excel-Bildschirmbeschriftung automatisch aktualisiert wird und die ausgewählte Zelle sichtbar ist.


Praktische Beispiele

Hier sind einige praktische Anwendungsbeispiele:

  1. Überprüfen einer Zelle vor dem Füllen: Wenn Du Werte in eine Spalte füllst, kannst Du vorab prüfen, ob die Zelle sichtbar ist, um sicherzustellen, dass der Benutzer die Änderungen sieht.

  2. Automatisches Scrollen: Kombiniere die Sichtbarkeitsprüfung mit einem Scroll-Befehl, um automatisch nach rechts zu scrollen, falls eine Zelle nicht sichtbar ist.


Tipps für Profis

  • Nutze ActiveWindow.ScrollIntoView in Kombination mit der Sichtbarkeitsprüfung, um die Benutzererfahrung zu verbessern.
  • Experimentiere mit der VisibleRange-Eigenschaft, um mehr über die Sichtbarkeit von Zellen zu lernen.
  • Dokumentiere Deine Makros gut, damit Du und andere Benutzer später leichter verstehen, was der Code macht.

FAQ: Häufige Fragen

1. Wie kann ich die Sichtbarkeit einer gesamten Spalte überprüfen? Du kannst das Intersect-Objekt verwenden, um zu überprüfen, ob der gesamte Bereich der Spalte im VisibleRange enthalten ist.

2. Funktioniert das auch in älteren Excel-Versionen? Ja, die oben genannten VBA-Methoden funktionieren in den meisten modernen Excel-Versionen, einschließlich Excel 2010 und neuer.

Mit diesen Informationen solltest Du in der Lage sein, die Sichtbarkeit von Zellen in Excel effektiv zu überprüfen und die Benutzeroberfläche entsprechend anzupassen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige