Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
596to600
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
596to600
596to600
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makroausführung auf bestimmte Spalte

Makroausführung auf bestimmte Spalte
14.04.2005 07:39:29
Bernd
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

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makroausführung auf bestimmte Spalte
14.04.2005 08:20:46
UweD
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
AW: Makroausführung auf bestimmte Spalte
14.04.2005 09:02:17
Bernd
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
Anzeige
AW: Makroausführung auf bestimmte Spalte
14.04.2005 09:22:34
UweD
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?
Anzeige
AW: Makroausführung auf bestimmte Spalte
14.04.2005 09:47:26
Bernd
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
Anzeige
AW: Makroausführung auf bestimmte Spalte
14.04.2005 10:12:30
.
AW: Makroausführung auf bestimmte Spalte
14.04.2005 11:45:24
Bernd
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
komm heut nicht mehr dazu.
14.04.2005 11:56:32
UweD
deshalb offen..
AW: komm heut nicht mehr dazu.
14.04.2005 12:00:43
Bernd
OK. dann lass doch morgen weitermachen...
Gruß Bernd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige