Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
07.11.2008 13:38:55 |
Tatjana |
|
|
|
07.11.2008 16:03:57 |
jh |
|
|
|
10.11.2008 10:02:58 |
Tatjana |
|
|
Aw:Aw:Aw:Doppelte Zeilen bei Kopiervorgang |
10.11.2008 18:30:50 |
jh |
|
|
|
11.11.2008 13:00:43 |
Tatjana |
|
|
|
11.11.2008 19:35:22 |
jh |
|
|
|
14.11.2008 09:47:18 |
Tatjana |
|
|
|
14.11.2008 17:03:49 |
jh |
|
|
|
15.11.2008 00:02:35 |
Tatjana |
|
|
|
15.11.2008 13:07:32 |
jh |
|
|
|
10.11.2008 15:38:40 |
Tatjana |
|
|
Von:
jh |
Datum:
10.11.2008 18:30:50 |
Views:
986 |
Rating:
|
Antwort:
|
Thema:
Aw:Aw:Aw:Doppelte Zeilen bei Kopiervorgang |
Hallo again :-)
Hatte schon gar nicht mehr mit einer Rückmeldung gerechnet.
In der Hoffnung, dass dein Anliegen richtig rübergekommen ist,
müsste das etwa folgendermaßen aussehen. Für VBA-Anfänger gibt
es noch ein paar Kommentare extra :-)
Sub Kopieren()
' Dein äußerer With-Block (ActiveWorkbook) ist überflüssig,
' weil sich Workshhet ohne vorangestellten Objektbezeichner
' sowieso immer auf die aktive Arbeitsmappe bezieht.
' Zu deinem inneren With-Block (UsedRange): Man kann With-
' Blöcke zwar verschachteln, muss dann aber im inneren
' Block alle Bezüge auf den äußeren Block vollständig
' adressieren, weil Excel im inneren Block keine Elemente
' des äußeren "sieht".
Dim wksSource As Worksheet ' zu kopierende Tabelle
Dim wksDestination As Worksheet ' Zieltabelle
Dim rngSource As Range ' zu kopierender Bereich
' Den Zielbereich müssen wir nicht extra deklarieren, weil als
' Zielangabe die linke obere Zelle dieses Bereiches genügt.
Dim i As Long ' Laufvariable
Dim lz As Long ' letzte Zeile
Dim ls As Integer ' letzte Spalte
' Zeilen sind immer Long, Spalten Integer (außer Excel 2007)
Set wksDestination = Worksheets.Add(After:=Worksheets( _
Worksheets.Count))
wksDestination.Name = Format(Date, "dd.mm.yyyy")
' Zur Sheets-Auflistung gehören außer Tabellen auch Diagramme.
' 'Sheets' klappt also nur wenn es keine Diagramme gibt.
Worksheets(4).Rows(3).Copy Destination:=wksDestination. _
Range("A1")
' wäre dir die Titelzeile in Fettschrift recht?
wksDestination.Rows(1).Font.Bold = True
For i = 3 To Worksheets.Count - 1
' - 1: Das letzte Blatt nicht in die Schleife einbeziehen,
' sonst gibt es wieder Dubletten.
Set wksSource = Worksheets(i)
With wksSource
lz = .UsedRange.Rows(.UsedRange.Rows.Count).Row + 1
ls = .UsedRange.Columns(.UsedRange.Columns.Count).Column
' Das sieht zwar recht umständlich aus, funktioniert aber auch,
' wenn der genutzte Bereich ungleichmäßig gefüllt ist.
Set rngSource = .Range(.Cells(4, 1), .Cells(lz, ls))
End With
lz = wksDestination.UsedRange.Rows(wksDestination. _
UsedRange.Rows.Count).Row
rngSource.Copy Destination:=wksDestination.Cells(lz + 1, 1)
Next i
End Sub
Wenn es Probleme gibt melde dich noch mal.
Gruß
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
07.11.2008 13:38:55 |
Tatjana |
|
|
|
07.11.2008 16:03:57 |
jh |
|
|
|
10.11.2008 10:02:58 |
Tatjana |
|
|
Aw:Aw:Aw:Doppelte Zeilen bei Kopiervorgang |
10.11.2008 18:30:50 |
jh |
|
|
|
11.11.2008 13:00:43 |
Tatjana |
|
|
|
11.11.2008 19:35:22 |
jh |
|
|
|
14.11.2008 09:47:18 |
Tatjana |
|
|
|
14.11.2008 17:03:49 |
jh |
|
|
|
15.11.2008 00:02:35 |
Tatjana |
|
|
|
15.11.2008 13:07:32 |
jh |
|
|
|
10.11.2008 15:38:40 |
Tatjana |
|
|