Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1060to1064
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

makro

makro
23.03.2009 10:39:47
simon
Hallo zusammen
da ich keine Makroerfahrung habe, könnt mir jemand dies in VBA übersetzen:
-zuerst soll Excel alle Zellen suchen mit der Schriftgrösse 14
-dann soll Excell diese kopiern und 10 Spalten weiter rechts wieder einfügen
eigentlich ganz einfach, aber zu schwierig für mich:)
vielen Dank für eure Hilfe!
MFG
Simon

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: makro
23.03.2009 10:48:34
Oberschlumpf
Hi Simon
Versuch es so:

Sub sbCopy()
Dim lrZelle As Range
With Sheets(1)
For Each lrZelle In .UsedRange
If lrZelle.Font.Size = 14 Then
lrZelle.Copy lrZelle.Offset(0, 10)
End If
Next
End With
End Sub


Mit diesem Code wird im ersten Tabellenblatt jede Zelle im benutzten Bereich auf Textgröße = 14 geprüft und bei Erfolg 10 Spalten weiter nach rechts wieder eingefügt.
Ich habe den gesamten, benutzten Bereich verwendet, weil du keine explizite Angabe gemacht hast, dass du nur eine bestimmte Spalte prüfen willst.
Hilft das?
Ciao
Thorsten

Anzeige
AW: makro
23.03.2009 10:56:17
Jogy
Hi.
Vorsicht, da steckt der Fehler drin, den ich zuerst auch gemacht habe: Wenn die Zielzelle auch noch im verwendeten Bereich liegt, dann wird die nochmal kopiert.
Gruss, Jogy
ja,hast Recht..danke für den Hinweis..owT
23.03.2009 10:57:26
Oberschlumpf
AW: makro
23.03.2009 10:54:07
Jogy
Hi.

Sub test()
Dim zeLLe As Range
Dim copyRng As Range
Application.ScreenUpdating = False
' Zuerst zu kopierende Zellen bestimmen
' Noch nicht kopieren, da sonst die Kopie
' evtl. wieder kopiert wird
For Each zeLLe In ActiveSheet.UsedRange
If zeLLe.Font.Size = 14 Then
If copyRng Is Nothing Then
Set copyRng = zeLLe
Else
Set copyRng = Union(copyRng, zeLLe)
End If
End If
Next
' Nun Zellen kopieren
For Each zeLLe In copyRng
zeLLe.Copy zeLLe.Offset(0, 10)
Next
Application.ScreenUpdating = True
End Sub


Gruss, Jogy

Anzeige
AW: makro
23.03.2009 10:56:15
simon
vielen Dank euch beiden! Hat mir sehr geholfen!
MFG
Simon

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige