Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
392to396
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
392to396
392to396
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zu langer Code?Bereich Formatieren

Zu langer Code?Bereich Formatieren
04.03.2004 12:04:54
Lars, Jungclaus
Hallo Spezialisten,
ich benutze folgendes Makro um einen markierten Bereich zu formatieren:

Sub Formatpunkt0()
Dim i, Ausgewählte_Zellanzahl, oberste_Zeile, linke_Spalte As Integer
Dim oben_links
On Error GoTo FeedBack
Ausgewählte_Zellanzahl = Selection.Areas.Count
ReDim Ausgewähltes_Feld(1 To Ausgewählte_Zellanzahl)
For i = 1 To Ausgewählte_Zellanzahl
Set Ausgewähltes_Feld(i) = Selection.Areas(i)
Next i
For i = 1 To Ausgewählte_Zellanzahl
oberste_Zeile = Ausgewähltes_Feld(i).Row
linke_Spalte = Ausgewähltes_Feld(i).Column
Next i
Set oben_links = Cells(oberste_Zeile, linke_Spalte)
For i = 1 To Ausgewählte_Zellanzahl
Ausgewähltes_Feld(i).NumberFormat = "#,##0"
Next i
Exit Sub
FeedBack:
If Err = 1005 Then
MsgBox ("Geht nicht in gesperrtem Blatt!")
Else
MsgBox Error(Err)
Resume Next
End If
End Sub

Das muß, mit der gleichen Funktionalität doch auch kürzer gehen - wer weiß wie ?
Danke Gruß Lars

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

Betreff
Datum
Anwender
Anzeige
AW: Zu langer Code?Bereich Formatieren
04.03.2004 12:29:08
Ramses
Hallo
Bereich markieren und das Makro laufen lassen

Sub Formatpunkt0()
Dim myC As Range
On Error GoTo FeedBack
For Each myC In Selection
myC.NumberFormat = "#,##0"
Next
Exit Sub
FeedBack:
If Err = 1005 Then
MsgBox ("Geht nicht in gesperrtem Blatt!")
Else
MsgBox Error(Err)
Resume Next
End If
End Sub

Gruss Rainer
AW: Zu langer Code?Bereich Formatieren
04.03.2004 13:13:11
Lars
Danke Rainer,
das Problem ist das dieser Code viel langsamer ist als der alte, versuche mal zeilen a1:h65000 so zu formatieren. Der alte Code braucht ca. 3 sekunden, der neue ? (habe nach einer Minute abgebrochen.)
Gruß Lars
Anzeige
AW: Zu langer Code?Bereich Formatieren
04.03.2004 13:16:55
Ramses
Hallo
von Geschwindigkeit hast du nichts gesagt :-)
Option Explicit

Sub Formatpunkt0()
Dim myC As Range
Set myC = Worksheets("Tabelle1").Range("A1:x2000")
On Error GoTo FeedBack
myC.NumberFormat = "#,##0"
Exit Sub
FeedBack:
If Err = 1005 Then
MsgBox ("Geht nicht in gesperrtem Blatt!")
Else
MsgBox Error(Err)
Resume Next
End If
End Sub

Den Range bitte anpassen.
Gruss Rainer

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige