Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1136to1140
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
Inhaltsverzeichnis

Makro von Office XP in Office 2007

Makro von Office XP in Office 2007
Office
Moin,moin Leute,
habe das folgende Makro in Excel 2007 eingebracht aber da funktioniert es nicht einwandfrei.
Es wird das vorhande Tabellenblatt nicht gelöscht und dann neu erstellt. In XP habe ich damit keine Probleme.
Frage."Was müßte ich ändern damit Excel 2007 auch damit fertig wird?"
Ich würde mich freuen wenn jemand sich den Code mal anschaut und mir sagen könnte, was für den Betrieb in Excel 2007 geändert werden muß.
Mfg
Odje
  • 
    Private Sub CopySheet()
    Dim Wb As Workbook, ws2 As Worksheet, r As Range, ws As Worksheet, Blattname As String
    Dim sp As Long, x As Long, z As Long
    Application.ScreenUpdating = False
    Application.SendKeys "%{F9}"
    If CDate(Range("C5").Value) Then  'evtl. Zelle ändern
    Range("E1").Value = Format(Range("C5").Value, "MMMM")  'evtl. Zelle ändern
    End If
    If Sheets(Sheets.Count).Name = Format(Range("C5").Value, "MMMM") Then  'evtl. Zelle ä _
    ndern
    Application.DisplayAlerts = False
    Sheets(Sheets.Count).Delete
    Application.DisplayAlerts = True
    End If
    Rem Druckbereich markieren
    Range("A2:E25").Select
    Rem Kopie anlegen Zieladresse ist A1 -
    Rem Zeilenhöhen und Spaltenbreiten werden übertragen
    Set Wb = ActiveWorkbook
    Set ws = ActiveSheet
    Set r = Selection
    Set ws2 = Wb.Worksheets.Add(After:=Wb.Worksheets(Wb.Worksheets.Count))
    r.Copy ws2.Range("A1")
    z = 0
    For x = r.Row To r.Row + r.Rows.Count - 1
    z = z + 1
    ws2.Rows(z).RowHeight = ws.Rows(x).RowHeight
    Next
    sp = 0
    For x = r.Column To r.Column + r.Columns.Count - 1
    sp = sp + 1
    ws2.Columns(sp).ColumnWidth = ws.Columns(x).ColumnWidth
    Next
    Rem  Wert aus der ("Vorlage")("E1") = Blattname für die Kopie
    Blattname = Wb.Worksheets("Vorlage").Range("E1").Value
    ws2.Name = Blattname
    Rem Vorlage wieder aktivieren, die Selektierung deaktivieren
    Wb.Worksheets("Vorlage").Activate
    Range("A1").Select
    Application.ScreenUpdating = True
    AUFRAEUMEN:
    Set Wb = Nothing: Set ws = Nothing: Set ws2 = Nothing: Set r = Nothing
    End Sub
    

  • 5
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Benutzer
    Anzeige
    bitte besser beschreiben...
    18.02.2010 11:34:36
    Björn
    Hallo,
    aber da funktioniert es nicht einwandfrei.
    
    Was funktioniert denn nicht?
    Kommt eine Fehlermeldung?
    Bleibt das Makro irgendwo hänge?
    Gruß
    Björn B.
    AW: bitte besser beschreiben...
    18.02.2010 14:50:24
    Odje
    Björn, das Makro bleibt bei der Zeile "ws2.Name=Blattname stehen", es erscheint eine Meldung - Excel kann die
    Datei nicht unter dem gleichen Namen speichern.
    Die Datei sollte aber schon mit der Anweisung
    If Sheets(Sheets.Count).Name = Format(Range("C5").Value, "MMMM") Then
    Application.DisplayAlerts = False
    Sheets(Sheets.Count).Delete
    Application.DisplayAlerts = True
    End If
    gelöscht sein, damit die neue Datei unter gleichen Namen wie vorher gespeichert werden kann.
    Wie erwähnt in Excel 2002 habe ich damit keine Probleme.
    Gruß
    Odje
    Anzeige
    AW: bitte besser beschreiben...
    18.02.2010 15:18:20
    Björn
    Hallo,
    also so kann ich da keinen Fehler erkennen...
    Hast Du eine Fehlerbehandlung? Dann ausschalten...
    Lass das auch mal weg:
    Application.DisplayAlerts = False
    und geh dann den Code in Einzelschritten durch.
    Wird das Blatt gelöscht?
    Gruß´
    Björn B.
    AW: bitte besser beschreiben...
    18.02.2010 16:10:16
    Odje
    Hallo Björn,
    Excel das unbekannte Wesen.
    Es funktioniert, frage aber bitte nicht "wieso und warum".
    Hatte zwischenzeitlich den PC ausgeschaltet und nach dem Neustart war alles in bester Ordnung.
    Das Makro ist OK.
    Für deine Mühe mir zuhelfen besten Dank.
    Wünsche dir noch einen schönen Tag.
    Gruß
    Odje
    Anzeige
    war bei mir auch schon oft so... oT
    18.02.2010 21:30:00
    Björn

    299 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige