Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1332to1336
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

Variable ändert sich während der Schleife

Variable ändert sich während der Schleife
24.10.2013 15:19:23
Georg
Servus,
Ich habe folgendes Problem und bissher leider nirgends eine Lösung gefunden.
Eine Schleife im Main

Sub ruft das unter 

Sub "copy" auf. In "copy" wird die variable "pos" definiert als die maximale zeilen anzahl im    _
_
_
aktuellen Blatt.
Falls "pos" > 1 ist soll der vorher kopierte Bereich bei pos+1 eingefügt werden.
Wenn das Blatt gefüllt wird springt pos aber automatisch auf die neue maximale spaltenanzahl  _
und bringt mir dadurch die Fehlermeldung "Anwendungs und objektdefinierter Fehler"  _
Laufzeitfehler '1004'
Meine Idee wäre es den Wert der Variable für den Schleifendurchlauf einzufrieren damit sich  _
nach der Definition sich der Wertbis zum nächsten Durchlauf nicht mehr verändert.
Anbei der aktuelle Code.
Option Explicit

Sub copy()
Dim pos As Long
pos = Worksheets(Family).Cells(Rows.Count, 1).End(xlUp).Row
With Worksheets("Data").Range("G:G,J:J,S:S,T:T,U:U").copy
If pos = "1" Then
Worksheets(Family).Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,  _
SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Else
Worksheets(Family).Range(Cells(pos + 1, 1)).PasteSpecial Paste:=xlPasteValues,  _
Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End If
End With
End Sub

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
If pos = 1 Then.........owT
24.10.2013 15:24:10
robert

AW: Variable ändert sich während der Schleife
24.10.2013 15:36:39
Georg
Hey Robert,
Danke für die schnelle Antwort, leider verstehe ich diese aber nicht ganz. Die Anweisung Worksheet(Family).... sollte doch für die Bedingung pos = 1 gelten, oder nicht?
Gruß,
Georg

AW: Variable ändert sich während der Schleife
24.10.2013 16:02:53
robert
Hi,
pos ist als Long definiert ( Zahl)
If pos = "1" bedeutet aber 1 ist Text .
Ich habe den Code nicht getestet, aber das ist mir aufgefallen.
Gruß
robert

...und damit kann pos als Long NIE "1" wdn, da...
24.10.2013 16:10:36
Luc:-?
…es sich hierbei ja um einen Vgl, keine Zuweisung (bei der automatisch konvertiert würde) handelt.
Gruß Luc :-?
Besser informiert mit …

Anzeige
AW: Variable ändert sich während der Schleife
24.10.2013 16:26:09
hary
Moin
Teste mal diesen Code. Evtl. laeuft er auf einen Fehler, da du die gesamte Laenge der Spalten einfuegen moechtest. Ist das wirklich noetig?
ungetestet.
Dim pos As Long
pos = Worksheets("Family").Cells(Rows.Count, 1).End(xlUp).Row
pos = IIf(pos 

gruss hary

AW: Variable ändert sich während der Schleife
24.10.2013 16:46:50
Georg
Hey Ihr,
leider haben die Tipps nicht zum erhofften Erfolg geführt.
@Harry, nein das kopieren der gesamten Spalten ist nicht nötig. Ich könnte über die Abfrage der beschriebenen Spalten den Bereich deutlich reduzieren. Mit meinen VBA Kenntnissen hätte ich aber jede Spalte sepererat kopieren müssen. Auch der Makrorecorder hat mich Spalten nicht teilweise markieren und kopieren lassen. Deswegen habe ich die Faule Variante gewählt und einfach alles rüberkopiert.
Danke für eure Mühe, ich probiere weiter :)
Gruß,
Georg

Anzeige
AW: Variable ändert sich während der Schleife
24.10.2013 17:14:33
hary
Moin Georg
Lad doch mal eine Bsp.-Mappe hoch. Brauchen ja nicht alle Zeilen belegt sein.
gruss hary

Worksheets("Family") geht auch nicht?
24.10.2013 17:15:04
robert
Hi, die Blattnamen sind so zu schreiben:
Worksheets("deine Namen"), also unter " "
Gruß
robert

AW: Variable ändert sich während der Schleife
25.10.2013 16:37:59
Georg
Hey miteinander,
sorry für die späte Antwort.
Die Blattnamen schreibe ich in diesem Makro ohne "" da Family eine Variable ist die ich bei Makro Start aus der Combobox befülle.
Die Funktion des Programms habe ich jetzt erstmal auf eine etwas andere Art gelöst und bin daher erstmal von der Lösung mit Schleife abgekommen. Generell habe ich das Problem aber noch nicht gelöst und das wurmt mich ein bisschen. Vor allem da das wieder kommen wird. Ich werde dazu nxt. Woche eine Bsp. Mappe hochladen. Vielleicht habe ich bis dahin aber auch schon einen Gedankenblitz. Euch erstmal ein schönes We.
Georg
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige