Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Makro auf allen vorhandenen Tabellen





Frage

Hi, ich will folgendes Makro auf allen Tabellenblättern (Tabelle1 bis Tabelle17) ausführen lassen: Private Sub Worksheet_SelectionChange(ByVal Target As Range) Select Case Range("B9").Value Case Is >= Range("B35").Value Range("B9").Interior.ColorIndex = 4 Case Is < Range("B35").Value Range("B9").Interior.ColorIndex = 3 Case Is = "" Range("B9").Interior.ColorIndex = 34 End Select End sub erst wollte ich es einfach in DieseArbeitsmappe einfügen klappt aber nicht. Dann hab ich es mit einer For Schleife versucht die alle Tabellen durchlaufen sollte klappt bei mir auch nicht. Kann mir jemand weiter helfen? Danke Gruß Berni

Antwort 1 von rainberg

Hallo Berni,

füge diesen Code in den Codebereich "DieseArbeitsmappe" ein.

Option Explicit

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Select Case Range("B9").Value
        Case Is >= Range("B35").Value
            Range("B9").Interior.ColorIndex = 4
        Case Is < Range("B35").Value
            Range("B9").Interior.ColorIndex = 3
        Case Is = ""
            Range("B9").Interior.ColorIndex = 34
    End Select
End Sub


Gruß
Rainer

Antwort 2 von Beri333

Super Danke
funktioniert prima.
Hab aber gleich noch ne kleine Frage:
bei oben angegebenen Code macht er bei >= B9 Hintergrundfarbe grün bei <B9 rot. eigentlich sollte er wenn nix drin steht Farbe 34 machen macht er aber nicht. wie kann man das Lösen?
Danke
Gruß
Berni

Antwort 3 von rainberg

Hallo Berni,

setze

 Case Is = ""
            Range("B9").Interior.ColorIndex = 34


an die 1. Stelle der Abfrage

Gruß
Rainer

Antwort 4 von Berni333

Danke
jetzt noch ne klitzekleine letzte Frage: Was machen wenn ich bei diesem Ausdruck
Case Is = ""
Range("B9").Interior.ColorIndex = 34
in Tabelle1 die Farbe 34 haben will und in den restlichen die Farbe 36 haben will.+
Danke nochmals
Gruß
Berni

Antwort 5 von rainberg

Hallo Berni,

dann so:

Option Explicit

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Select Case Range("B9").Value
        Case Is = ""
            If ActiveSheet.Name = "Tabelle1" Then
                Range("B9").Interior.ColorIndex = 34
            Else
                Range("B9").Interior.ColorIndex = 36
            End If
        Case Is >= Range("B35").Value
            Range("B9").Interior.ColorIndex = 4
        Case Is < Range("B35").Value
            Range("B9").Interior.ColorIndex = 3
    End Select
End Sub


Gruß
Rainer

Antwort 6 von Jong

Hallo,

Ich erst erststeiger bei VB 6.0
da Habe ich ein Lager aufgebaut und eine Tabelle in access datenbank den ich abfragen lassen kann. Es funktioniert nur nach teil ich kann Dantenbank nicht erweitern
ich habe es auch mit Adodc1 und Adodc2 versucht die zieht er auch an nur kann nicht abfragen.

wer kann mir dabei helfen entweder Datenbank erweitern odereine code zum abfragen der zweite tabelle

gruß Jong