Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
652to656
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
652to656
652to656
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Variable übergelaufen ?

Variable übergelaufen ?
17.08.2005 11:57:54
Johannes
Hallo Freunde,
folgendes Makro läuft zwar einige Male gut, dann bleibt es beim Umbenennen hängen. Wenn die Datei geschlossen und dann neu gestartet wird, läuft es wieder eine Weile.
Frage läuft hier ein "Speicher" der Variablen N über - und wenn ja wie kann der nach jedem Durchlauf geleert werden.
Vielen Dank für Eure Hilfe einstweilen.
Gruß
Johannes M
Code:

Sub Alle()
Dim N As Variant
N = Range("D3").Value
On Error GoTo Fehler
Application.Run "Übertragen"
Application.ScreenUpdating = False
Sheets("Maske").Select
Sheets("Maske").Copy Before:=Sheets(4)
Sheets("Maske (2)").Select
Sheets("Maske (2)").Name = N
Sheets("Maske").Select
Range("D3").Select
ActiveWorkbook.Save
Exit Sub
Fehler:
MsgBox "Dieses Tabellenblatt exixtiert schon !" & Chr(13) & _
"Es wird als Maske (n) abgelegt. Bitte manuell umbenennen.", _
Title:="Name doppelt !"
Range("K12").Select
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variable übergelaufen ?
17.08.2005 12:31:22
Ramses
Hallo
probiers mal so

Sub Alle()
Dim N As Variant, i As Integer
Dim tarWks As Worksheet, qWks As Worksheet
Set qWks = Worksheets(ActiveSheet.Name)
Application.Run "Übertragen"
Worksheets("Maske").Copy Before:=Sheets(4)
Set tarWks = Worksheets(ActiveSheet.Name)
For i = 1 To Worksheets.Count
Debug.Print qWks.Range("D3")
If Worksheets(i).Name = qWks.Range("D3").Text Then
With tarWks
.Name = Format(Now, "dd-mm-yyyy hh-mm") & "! " & qWks.Range("d3")
.Activate
.Range("D3").Select
MsgBox "Dieses Tabellenblatt exixtiert schon !" & Chr(13) & _
"Es wurde als: " & .Name & " abgelegt. Bitte manuell umbenennen.", _
Title:="Name doppelt !"
Exit Sub
End With
End If
Next i
With tarWks
.Name = qWks.Range("d3")
.Range("D3").Select
End With
ActiveWorkbook.Save
End Sub

Gruss Rainer
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige