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

in einer Spalte Zellen einfügen

in einer Spalte Zellen einfügen
07.05.2003 17:08:57
dirk
Hallo,

ich habe in einer Spalte mehrere Werte (variabele Anzahl) direkt untereinander und möchte zwischen den Werten je eine leere Zelle einfügen, hat jemand eine Idee wie man sowas hinbekommt?
Ich habe zwar ein Makro das das kann das ist allerdings ziemlich langsam.

Danke

Dirk

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: in einer Spalte Zellen einfügen
07.05.2003 17:16:47
PeterW

Hallo Dirk,

und wie sieht das Makro aus? Poste bitte den Code.

Gruß
Peter

Re: in einer Spalte Zellen einfügen
07.05.2003 17:18:28
Helmut T.

Hi,

poste mal Dein Makro ...

Oder probier folgendes:

sub dein_makro()

application.screenupdating = false
application.calculation = xlcalculationmanual

... dein code ...

application.screenupdating = true
application.calculation = xlcalculationautomatic

...

end sub

Dann sollte es schneller laufen.

Gruß,
Helmut.

Re: in einer Spalte Zellen einfügen
07.05.2003 17:29:39
Frank R

for each.z in activesheet.range(cells(1,1)cells(5,1).value

Ze_zae=Ze_zae +1
for each.x in activesheet.range(cells(1,1)cells(1,8).value
Sp_zae=Sp_zae +1
cells(Ze_zae,Sp_zae+1).value=""
next x
next z

So ungefähr

Anzeige
Re: in einer Spalte Zellen einfügen
07.05.2003 17:37:46
PeterW

Hallo Frank,

bist Du sicher, dass dieser Code überhaupt laufen kann? Und wenn ich die Aufgabe richtig verstanden habe ging es darum leere Zellen einzufügen und nicht darum Zellinhalte zu löschen (also eher .Insert shift:=xlDown).

Gruß
Peter

Re: in einer Spalte Zellen einfügen
07.05.2003 18:33:09
Frank R

Sp_zae =2
Ze_zae=0
for each.z in activesheet.range(cells(1,1)cells(5,1)).value
Ze_zae=Ze_zae +1

for each.x in activesheet.range(cells(1,1)cells(1,8)).value
cells(Ze_zae,Sp_zae).value.Insert shift =xlDown
Sp_zae=Sp_zae +2
next x
next z


Dieser code müßte sogar sehr fix laufen.
Ist Korrigiert, habe etwas falsch verstanden


Anzeige
Re: in einer Spalte Zellen einfügen
07.05.2003 20:31:48
PeterW

Hallo Frank,

sorry wenn ich nerve. :-)

Es geht um EINE Spalte und unterschiedlich viele Werte. Also beispielsweise für Spalte A:

Gruß
Peter

Danke
07.05.2003 20:49:26
Dirk

Danke. Der Code von Peter tut genau das was er soll. Und das ungleich schneller als meiner.

Schönen Abend noch

Dirk

Re: in einer Spalte Zellen einfügen
07.05.2003 20:55:48
Frank R

Naja falls du das Ganze noch dynamischer für mehrere Spalten und Zeilen haben möchtest.
Hier nochmal mein ausprobierter Code:
Sub ttes()
Ze_zae = 0
For Each zx In ActiveSheet.Range(Cells(1, 1), Cells(20, 1))
If zx.Value >= 2 Then
Ze_zaeV = Ze_zaeV + 1
End If
Next zx

For Each z In ActiveSheet.Range(Cells(1, 1), Cells(20, 1))
If z.Value >= 1 Then
Ze_zae = Ze_zae + 1
End If
Sp_zae = 2
For Each x In ActiveSheet.Range(Cells(1, 1), Cells(1, 20))


If Sp_zae < Ze_zaeV Then

Cells(Ze_zae, Sp_zae).Select
Cells(Ze_zae, Sp_zae).Insert Shift:=xlShiftDown
If x.Value >= 1 Then
Sp_zae = Sp_zae + 2
zel_end = zel_end + 1
End If

End If
Next x
If Ze_zae = Sp_zae Then
Exit Sub
End If
Next z

End Sub




Anzeige
Re: in einer Spalte Zellen ein
08.05.2003 11:21:23
Dirk

Auch auf die Gefahr hin, dass es peinlich wird hier mein Code:

Sub Zellen_einfügen()
Range("E9").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop
Range("f8").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop

End Sub

Verständlicherweise dauert das bei 300 Zellen ziemlich lange. Der Code hat aber den Vorteil, dass nur in dem Bereich Zellen eingefügt werden, die auch tatsächlich belegt sind. Die Zahl der belegten Zellen steht aber auch nochmal in der Tabelle



Anzeige
Re: in einer Spalte Zellen ein
08.05.2003 11:28:09
Dirk

Auch auf die Gefahr hin, dass es peinlich wird hier mein Code:

Sub Zellen_einfügen()
Range("E9").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop
Range("f8").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop

End Sub

Verständlicherweise dauert das bei 300 Zellen ziemlich lange. Der Code hat aber den Vorteil, dass nur in dem Bereich Zellen eingefügt werden, die auch tatsächlich belegt sind. Die Zahl der belegten Zellen steht aber auch nochmal in der Tabelle



Anzeige
Re: in einer Spalte Zellen ein
08.05.2003 11:32:54
Dirk

Auch auf die Gefahr hin, dass es peinlich wird hier mein Code:

Sub Zellen_einfügen()
Range("E9").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop
Range("f8").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop

End Sub

Verständlicherweise dauert das bei 300 Zellen ziemlich lange. Der Code hat aber den Vorteil, dass nur in dem Bereich Zellen eingefügt werden, die auch tatsächlich belegt sind. Die Zahl der belegten Zellen steht aber auch nochmal in der Tabelle



Anzeige
Re: in einer Spalte Zellen ein
08.05.2003 11:37:35
Dirk

Auch auf die Gefahr hin, dass es peinlich wird hier mein Code:

Sub Zellen_einfügen()
Range("E9").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop
Range("f8").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop

End Sub

Verständlicherweise dauert das bei 300 Zellen ziemlich lange. Der Code hat aber den Vorteil, dass nur in dem Bereich Zellen eingefügt werden, die auch tatsächlich belegt sind. Die Zahl der belegten Zellen steht aber auch nochmal in der Tabelle



Anzeige
Re: in einer Spalte Zellen ein
08.05.2003 11:44:42
Dirk

Auch auf die Gefahr hin, dass es peinlich wird hier mein Code:

Sub Zellen_einfügen()
Range("E9").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop
Range("f8").Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Do Until IsEmpty(Selection)
Selection.Insert Shift:=xlDown
ActiveCell.Offset(2, 0).Select
Loop

End Sub

Verständlicherweise dauert das bei 300 Zellen ziemlich lange. Der Code hat aber den Vorteil, dass nur in dem Bereich Zellen eingefügt werden, die auch tatsächlich belegt sind. Die Zahl der belegten Zellen steht aber auch nochmal in der Tabelle



Anzeige
Re: in einer Spalte Zellen ein
08.05.2003 12:07:51
PeterW

Hallo Dirk,

brauchst Du weitere Hilfe? Bin davon ausgegangen, dass das Problmem aus der Welt ist.

Gruß
Peter

Re: in einer Spalte Zellen ein
08.05.2003 12:20:23
Dirk

Hallo Peter,

das bin ich auch. Es gibt nur noch kleinere Probleme damit, dass Dein Code die Zellen für die ganze Spalte einfügt. Ich habe aber in den ersten Zeilen noch Werte stehen auf die sich ein weiteres Makro bezieht. Das ist aber kein echtes Problem.

Gruß

Dirk

Re: in einer Spalte Zellen ein
08.05.2003 12:22:37
PeterW

Hallo Dirk,

dann setzt den Schleifenzähler hoch, also statt "to 2 Step -1" "to NummerDerErstenLeerzeile Step -1".

Gruß
Peter

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige