Excel: belegte Zellen kopieren

  • #1
P

panscher

Bekanntes Mitglied
Themenersteller
Dabei seit
02.09.2004
Beiträge
99
Reaktionspunkte
0
Hallo,

ich habe mir einen kleinen Jahreskalender erstellt, der zur Zeit so aussieht.

A B C D
1 Datum: Geburtstag: Telefon: Handy:
2 01.01.2008 Martha 34423423 34343
3 02.01.2008
4 03.01.2008 Sabrina 34535 46466

usw.

Dieser geht bis 31.12.2008.

Jetzt möchte ich die Zellen, in denen was drin steht (A1:D4) auf ein neues Tabelleblatt als Jahresübersicht kopieren, geht das mit einer Formel oder braucht man dazu ein VBA-Makro?

Gruß Martin
 
  • #2
Hallo Martin,

das kleine Makro sollte das gewünschte erfüllen.
Code:
Sub JahresuebersichtErstellen()

 Const cBLTNAME_JAHRESUEBERSICHT = __Jahresübersicht__
 Const cZUEBERSCHRIFT = 1->Zeilennummer der Überschriften
 Const cSPDATUM = 1-> Spalte A
 Const cSPNAME = 2 -> Spalte B, entscheidet ob Zeile Leer ist

 Dim ws As Worksheet
 Dim lZeilen As Long, z As Long

 If LCase(ActiveSheet.Name) = LCase(cBLTNAME_JAHRESUEBERSICHT) Then
  MsgBox Makro kann nicht auf Blatt  & cBLTNAME_JAHRESUEBERSICHT &  ausgeführt werden.
  GoTo AUFRAEUMEN
 End If

->eventuell vorhandene Jahresübersicht löschen
 For Each ws In ActiveWorkbook.Worksheets
  If LCase(ws.Name) = LCase(cBLTNAME_JAHRESUEBERSICHT) Then
   Application.DisplayAlerts = False
   ws.Delete
   Application.DisplayAlerts = True
   Exit For
  End If
 Next
 
->Blatt kopieren
 ActiveSheet.Copy After:=ActiveSheet
 
->kopiertes Blatt zur Jahresübersicht machen
 Set ws = ActiveSheet
 ws.Name = cBLTNAME_JAHRESUEBERSICHT
->Zeilen ohne Inhalt in Spalte Name löschen
 lZeilen = ws.Cells(ws.Rows.Count, cSPDATUM).End(xlUp).Row
 For z = lZeilen To cZUEBERSCHRIFT + 1 Step -1
  If ws.Cells(z, cSPNAME).Value =  Then ws.Rows(z).Delete
 Next

AUFRAEUMEN:
 Set ws = Nothing
End Sub
Gruß Matjes :)
 
Thema:

Excel: belegte Zellen kopieren

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.966
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben