Makroausführung auf bestimmte Spalte

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Makroausführung auf bestimmte Spalte von: Bernd
Geschrieben am: 14.04.2005 07:39:29

Einen Guten Morgen,

ich benötige mal Euere Hilfe.
Habe eine Spalte (H12:H200) mit Einträgen. Durch Aktivierung der Zelle und klicken einer Schltfläche wird das Makro gestartet.
Nun soll das Makro nur ausführbar sein, wenn die Zellen in (H12:H200) aktiv sind. Ist eine Zelle außerhalb aktiviert, dann soll´s ´ne Meldung ("Aktivieren Sie die ....") geben.

Kann mir bitte jemand helfen?

Gruß Bernd

Bild


Betrifft: AW: Makroausführung auf bestimmte Spalte von: UweD
Geschrieben am: 14.04.2005 08:20:46

Hallo Bernd


so klappt es:


Sub test()
    If Not Intersect(Range(Selection.Address), Range("H12:H200")) Is Nothing Then
        MsgBox "Bereich OK"
        'dein Makro
    Else
        MsgBox "Bitte Zelle aus H12:H200 wählen"
    End If
End Sub



Du kannst dein Makro aber auch unabhängig von select aufbauen...

Zeig es mal, evtl. bauen wir es um.


Gruß UweD


Bild


Betrifft: AW: Makroausführung auf bestimmte Spalte von: Bernd
Geschrieben am: 14.04.2005 09:02:17

Hallo UweD

Hat etwas gedauert.
Hab erst einmal vielen Dank Dir für Deine Bemühungen. Habe es hochgeladen unter:

https://www.herber.de/bbs/user/21130.xls

Mein Problem besteht im Tabellenblatt "Übersicht"

Ich möchte ja nicht unverschämt sein, aber vielleicht kannst Du mir noch bei einem weiteren Problem helfen.

Vielen Dank

Gruß Bernd


Bild


Betrifft: AW: Makroausführung auf bestimmte Spalte von: UweD
Geschrieben am: 14.04.2005 09:22:34

Hi

so läuft es:


      
Sub Transportversuch()
Dim blName$
Dim zl, sp, s As Integer
    
If Not Intersect(Range(Selection.Address), Range("H12:H200")) Is Nothing Then
        
        Application.ScreenUpdating = 
False
        
        
        
'Sheets("Übersicht").Activate
        blName = ActiveCell.Text
        zl = ActiveCell.Row
        sp = ActiveCell.Column
        
        
        Sheets(
"Transportversuch").Copy after:=Sheets(Sheets.Count)
        Sheets(
"Übersicht").Activate
          
        
With Sheets("Transportversuch (2)")
            .Visible = 
True
            .Name = blName
        
        
End With
          
        Sheets(
"Übersicht").Hyperlinks.Add Anchor:=Selection, _
            Address:=
"", SubAddress:=Selection & "!A1"
                 
        
'SubAddress = "'SW-EH'!A1"
          
        
'Sortieren nach AP_Liste
          
        Sheets(blName).Activate
        ActiveSheet.Unprotect (
"mfe")
          
        Cells(2, 3) = Sheets(
"Übersicht").Cells(zl, sp)
          
          
        ActiveSheet.Protect (
"mfe")
          
        Sheets(
"Übersicht").Activate
          
        Application.ScreenUpdating = 
True
    
    
Else
        MsgBox 
"Bitte Zelle aus H12:H200 wählen"
    
End If

End Sub 




Wobei kann ich noch helfen?


Bild


Betrifft: AW: Makroausführung auf bestimmte Spalte von: Bernd
Geschrieben am: 14.04.2005 09:47:26

Vielen Dank, es funktioniert :-)

Mein Problem ist nun noch, dass ich im Übersichtenblatt noch eine Abfrage realisieren muss. Und zwar in den Zellen H12 bis G200, wie folgt:
1. Abfrage, ob in Zelle H12 bis H200 ein Link exsistiert (um zu erkennen, dass ein neues Tabellenblatt mit dem neuen Namen der in Zelle H12, H13, ... eingefügt wurde.
2. Ob in dem neu-erstellten Blatt in Zelle H2 (immer gleich) ein "ja" eingetragen wurde (Bestätigung, dass der Transportversuch erfolgreich war)
3. Wenn ein "ja" eingetragen wurde, dann soll im Übersichtenblatt in der entsprechenden Zeile ein "x" erscheinen und das Feld "grün" markiert (kann ich dann via "bedingter Formatierung machen)
Das Problem ist, dass eine Routine eingearbeitet werden müsste, die bei Programmstart immer alle Zellen im Übersichtenblatt (H12:H200) durchläuft und "nachschaut", ob der Link aktiv ist (das Tabellenblatt existiert) und wenn ja, dann "nachschaut", ob ein "ja" vorhanden ist. Allerdings sind die Namen der Tabellenblätter immer unterschiedlich (ergeben sich das dem Zelleninhalt (H12:H200).

Ich hoffe, ich konnte meine Problem erklären .?.

Die Zellen G12 bis G200 sollen ein "x" erhlaten, sobald das Tabellenblatt mit dem Namen aus H12 bis H200 existiert und ein "ja" in der Zelle $H$2 vorhanden ist.

Gruß Bernd


Bild


Betrifft: AW: Makroausführung auf bestimmte Spalte von: .
Geschrieben am: 14.04.2005 10:12:30




Bild


Betrifft: AW: Makroausführung auf bestimmte Spalte von: Bernd
Geschrieben am: 14.04.2005 11:45:24

Hallo Uwe,

hast Du schon eine Idee oder sogar schon ´ne Lösung finden können???
Bei mir hat es bis jetzt nicht geklappt.

Gruß Bernd


Bild


Betrifft: komm heut nicht mehr dazu. von: UweD
Geschrieben am: 14.04.2005 11:56:32

deshalb offen..


Bild


Betrifft: AW: komm heut nicht mehr dazu. von: Bernd
Geschrieben am: 14.04.2005 12:00:43

OK. dann lass doch morgen weitermachen...

Gruß Bernd


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Makroausführung auf bestimmte Spalte"