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

Makro verfeinern !?

Makro verfeinern !?
21.10.2006 21:19:55
Leo
Hallo zusammen,
ich hab wieder einmal ein Problem mit meinem MAKRO - in der anliegenden Datei. Einer von euch in Forum war so nett und schrieb mir ein MAKRO zum Vertauschen - für bis zu 4 Spalten (A, B, C & D) & bis zu 10.000 Zeilen (1 - 10.000).
Um es auf den Punkt zu bringen, ich brauche ein MAKRO für bis zu der AZ Spalte & 10.000 Zeile - also von A (über Z & AA) bis hin zu AZ & von Zeile 1 bis 10.000.
Ist jemand so nett und schribt mir die anliegende Datei um bzw. ladet mir eine neue hoch !?
Danke euch schon heute, hier & jetzt im voraus für Eure Unterstützung.
Mit besten Wünschen & weiterhin viel Erolg :
Leo van der Haydn
Folgendes MAKRO kann erweitert werden ...
https://www.herber.de/bbs/user/37567.xls

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro verfeinern !?
21.10.2006 21:55:14
IngGi
Hallo Leo,
du kannst die benötigte Anzahl von Zeilen und Spalten nun ändern, indem du den Variablen "Zeilenzahl" und "Spaltenzahl" entsprechende Werte zuweist. Wenn du diese Variablen, wie unten, ausserhalb des Makros deklarierst, kannst du sie auch in den anderen Makros des Moduls verwenden.
Ich habe dir ausserdem eine Fehlerroutine eingebaut. Dort sind zwar (noch) keine spezifischen Reaktionen auf bestimmte Fehler eingebaut, aber die Routine sorgt dafür, dass die Bildschirmaktualisierung auch dann wieder eingeschaltet wird, wenn das Makro wegen eines Laufzeitfehlers abgebrochen wird.
Option Explicit
Dim Spaltenzahl As Integer
Dim Zeilenzahl As Long
Dim aVar
Sub Vertauschen()
Dim iSpalte   As Integer
Dim iIndx     As Long
Dim iZeile    As Long
On Error Goto Fehler
Spaltenzahl = 52
Zeilenzahl = 10000
ReDim aVar(Zeilenzahl)
Application.ScreenUpdating = False
For iSpalte = 1 To Spaltenzahl
   iIndx = 0
   For iZeile = Zeilenzahl To 1 Step -1
      aVar(iIndx) = Cells(iZeile, iSpalte)
      iIndx = iIndx + 1
   Next iZeile
   For iZeile = 1 To Zeilenzahl
      Cells(iZeile, iSpalte) = aVar(iZeile - 1)
   Next iZeile
Next iSpalte
Application.ScreenUpdating = True
Exit Sub
Fehler:
MsgBox "Fehler: " & Err.Number & vbLf & vbLf & Err.Description
Application.ScreenUpdating = True
End Sub
Anzeige
AW: Makro verfeinern !?
22.10.2006 18:05:27
Daniel
Hallo
wenn ich es richtig verstanden habe, willst du einfach die Reihefolge der Reihen tauschen,
aus der 1. wird die letzte, aus der letzten die 1.
aus der 2. wird die vorletzte, aus der vorletzten wird die 2 usw.
das geht dann einfacher über:
- zus. Spalte einfügen
- Zellen von Spalte A mit 1 bin N ausfüllen
- umgekehert sortieren
- Spalte A wieder löschen
fertig.
geht zur Not auch ohne Makro recht zügig
als Makro sieht es so aus:

Sub Zeilen_umdrehen()
Columns("A:A").Insert
Range("A1").Value = "1"
Range("A1:A" & ActiveSheet.UsedRange.Row).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, Step:=1, Trend:=False
ActiveSheet.UsedRange.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Columns("A:A").Delete
End Sub

Gruß, Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige