Makro läuft nicht mehr richtig

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

Betrifft: Makro läuft nicht mehr richtig
von: Jochen Bode
Geschrieben am: 16.07.2015 16:38:04

Hallo Excel-Freunde,
habe seit heute ein kleines Problem. In einem sehr langen Makro habe ich gleich zu Anfang folgenden Befehl:

Sub Kopieren()
    Sheets(4).Copy before:=Sheets(5)
    Sheets(5).Name = Cells(5, 10)
***Hier eine Rehe weitere Befehle
End Sub
Die Seite 4 wird vor Seite 5 kopiert aber das Umbenennen, Name aus kommt aus Zelle “J5 = (5, 10) “, nicht mehr.
Habe nur das Kopieren und das Umbenennen in einer Testdatei ausprobiert, dort klappt es.
Hoffe das Erklärung verständlich ist.
Danke im Voraus.
Gruß Jochen

Bild

Betrifft: AW: Makro läuft nicht mehr richtig
von: selli
Geschrieben am: 16.07.2015 16:42:21
hallo jochen,
gib der zelle den kompletten namen mit.
Sheets(5).Name = Sheets(4).Cells(5, 10)
(Sheets(4) ist in dem beispiel geraten. keine ahnung in welchem blatt die besagte zelle J5 zu finden ist)
gruß
selli

Bild

Betrifft: AW: Makro läuft nicht mehr richtig
von: Jochen Bode
Geschrieben am: 16.07.2015 16:53:44
Hallo selli,
der Name, eine laufende Nummer, wird aus Sheet(5), das ist die kopierte Seite, Zelle J5 ausgelesen. Hat eigenartigerweise bis jetzt immer ohne Probleme geklappt.
Gruß
Jochen

Bild

Betrifft: Vermutung
von: Klexy
Geschrieben am: 16.07.2015 17:11:35
Das Problem hatte ich auch mal.
Erweiter mal dein Makro:

Sub Kopieren()
     Sheets(4).Copy before:=Sheets(5)
 
On Error GoTo Fehler
Dim neuName As String
neuName = Cells(5, 10)
    Sheets(5).Name = neuName
    Exit Sub
Fehler:
    If Len(neuName) = 0 Then
        MsgBox "Der Blattname darf nicht leer sein."
        Application.DisplayAlerts = False
        ActiveSheet.Delete
        Application.DisplayAlerts = True
        Sheets(4).Select
        Cells(5, 10).Select
        Cells(5, 10).Interior.Color = RGB(255, 255, 0)
        Exit Sub
    ElseIf Len(neuName) > 31 Then
        MsgBox "Der Blattname darf nicht länger als 31 Zeichen sein."
        Application.DisplayAlerts = False
        ActiveSheet.Delete
        Application.DisplayAlerts = True
        Sheets(4).Select
        Cells(5, 10).Select
        Cells(5, 10).Interior.Color = RGB(255, 255, 0)
        Exit Sub
    End If
    Application.DisplayAlerts = False
    ActiveSheet.Delete
    Application.DisplayAlerts = True
    MsgBox "Dieser Blattname ist schon vergeben."
    
    ' ***Hier eine Rehe weitere Befehle
 
 End Sub


 Bild

Beiträge aus den Excel-Beispielen zum Thema "PDF als Objekt aus Hyperlink einbinden"