Frage z uMakro

Dieses Thema Frage z uMakro im Forum "Windows XP Forum" wurde erstellt von Krenni, 3. Okt. 2006.

Thema: Frage z uMakro Hi, meine Frage ist, kann mir jemand sagen wie ich bei folgendem Makro einen Bereich auswähle bzw. die Zellen...

  1. Hi,
    meine Frage ist, kann mir jemand sagen wie ich bei folgendem Makro einen Bereich auswähle bzw.
    die Zellen A11,A12,A13..., mit ein und der seleben Strg+b zb., (über optionen makros..) ansteuern kann;
    Das Makro soll bei drücken von Strg + B die Farbe von Zelle A11 ändern (wenn die Zelle markiert ist)
    weiters soll es können dass bei Strg + D zb. die Ursprungsfareb(Fontcolor-0) herstellt bei Markierung,..
    und dieses soll für mehrere Zellen gelten,...

    If Cells(11, 1).Activate = True Then Cells(11, 1).Font.ColorIndex = 3
    End Sub
    Sub textfarbe1_1()
    If Cells(11, 1).Activate = True Then Cells(11, 1).Font.ColorIndex = 0
    End Sub

    Danke Krenni
     
  2. Hallo Krenni ,

    die folgende Makros sollten in einem Modul liegen.
    Code:
    Option Explicit
    
    '******************************************************************************
    Private Function MeineZellen(vZellen As Variant)
     ->Angabe der Zellen, die überwacht werden sollen
      vZellen = Array(A11, A12, A13)
    End Function
    
    '******************************************************************************
    Sub Excel_STRGB_ColorIndexA11A12A13Setzen()
      Dim MyRange As Range, vZellen As Variant, x As Long
      
      Call MeineZellen(vZellen)
      
      For x = LBound(vZellen) To UBound(vZellen)
        Set MyRange = Application.Intersect(Range(vZellen(x)), Selection)
        If Not MyRange Is Nothing Then MyRange.Interior.ColorIndex = 3
      Next
      
      Set MyRange = Nothing
    End Sub
    
    '******************************************************************************
    Sub Excel_STRGD_ColorIndexA11A12A13Loeschen()
      Dim MyRange As Range, vZellen As Variant, x As Long
      
      Call MeineZellen(vZellen)
      
      For x = LBound(vZellen) To UBound(vZellen)
        Set MyRange = Application.Intersect(Range(vZellen(x)), Selection)
        If Not MyRange Is Nothing Then MyRange.Interior.ColorIndex = xlColorIndexNone
      Next
      
      Set MyRange = Nothing
    End Sub
    
    '******************************************************************************
    Sub KeysSetzen_STRGB_Und_STRGD()
      Application.OnKey ^{B}, Excel_STRGB_ColorIndexA11A12A13Setzen
      Application.OnKey ^{D}, Excel_STRGD_ColorIndexA11A12A13Loeschen
    End Sub
    
    '******************************************************************************
    Sub KeysUrspungzustand_STRGB_Und_STRGD()
      Application.OnKey ^{B}, 
      Application.OnKey ^{D}, 
    End Sub
    In MeineZellen werden die Zellen definiert, die überwacht werden sollen.
    Excel_STRGB_ColorIndexA11A12A13Setzen setzt Farbe in überwachter Zelle, wenn diese selektiert ist.
    Excel_STRGD_ColorIndexA11A12A13Loeschen löscht Farbe in überwachter Zelle, wenn diese selektiert ist.
    KeysSetzen_STRGB_Und_STRGD schaltet die Tastenkombintionen STRG+SHIFT+b und STRG+SHIFT+d auf die Makros.
    KeysUrspungzustand_STRGB_Und_STRGD stellt die ursprünglichen Tastenkombintionen für STRG+SHIFT+b und STRG+SHIFT+d wieder her.

    Damit beim Öffnen/Aktivieren der Mappe die Keys gesetzt werden, muß beim Aktivieren der Mappe KeysSetzen_STRGB_Und_STRGD aufgerufen werden.
    Damit die Keys nur auf diese Mappe beschränkt bleiben, müssen die Keys beim Deaktivieren der Mappe wieder zurückgesetzt werden (mit KeysUrspungzustand_STRGB_Und_STRGD).

    Das macht folgender Code, der in der Code-Seite der Arbeismappe ('DieseArbeitsmappe) liegen muß.
    Code:
    Private Sub Workbook_Activate()
      Call KeysSetzen_STRGB_Und_STRGD
    End Sub
    Private Sub Workbook_Deactivate()
      Call KeysUrspungzustand_STRGB_Und_STRGD
    End Sub
    Gruß Matjes :)
     
Die Seite wird geladen...

Frage z uMakro - Ähnliche Themen

Forum Datum
Frage zu Testversion Windows Server-Systeme 29. Aug. 2016
Win7: Win32 Fehlermeldung und andere Fragen Windows 7 Forum 9. Juli 2016
Frage zu Windows-Prozessen :) Windows 7 Forum 4. Apr. 2016
Abfrage der Anmeldedaten bei Zugriff auf Netzlaufwerke Windows 7 Forum 30. März 2016
Frage zu Win 10 Windows 10 Forum 8. März 2016