[7]
Wie füge ich den kompletten Pfad mit Dateinamen in die Fußzeile des aktiven Tabellenblattes ein?
Das nachfolgende Makro trägt im rechten Bereich der Fußzeile den Pfad und den Dateinamen der aktiven Arbeitsmappe ein:
Sub PfadInFusszeile()
ActiveSheet.PageSetup.RightFooter = ActiveSheet.Parent.Fullname
End Sub
|
[6]
Wie kann man Excel dazu zwingen, das Semikolon als Trennzeichen zu verwenden?
Ich möchte einen Excelbereich als CSV-Datei speichern, deren Elemente dann mit einem Semikolon getrennt sind.
Führt man die Funktion per Hand aus, funktioniert es. Läßt man das Gleiche mit einem Makro durchführen,
werden die Datenfelder mit einem Komma getrennt abgespeichert.
Die folgenden Makros müßen Sie noch an Ihre tatsächliche Umgebung anpassen.
Sub SaveCSV()
Dim Bereich As Object, Zeile As Object, Zelle As Object
Dim strTemp As String
Const Pfad As String = "Dein\Pfad"
Const Dateiname As String = "NeuerDateiname"
Const Extension As String = ".CSV"
Const Trennzeichen As String = ";"
Set Bereich = ActiveSheet.UsedRange
Open Pfad & Dateiname & Extension For Output As #1
For Each Zeile In Bereich.Rows
For Each Zelle In Zeile.Cells
If InStr(1, Zelle.Text, ";") > 0 Then
'Zellen, die ein Semikolon beinhalten in Anführungsstriche setzen
strTemp = strTemp & """" & CStr(Zelle.Text) & """" & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
Next
Print #1, strTemp
strTemp = ""
Next
Close #1
Set Bereich = Nothing
End Sub
2) Öffnen:
Sub OpenCSV()
Workbooks.Open FileName:="Lw:\Pfad\Datei.CSV"
End Sub
|
[5]
Ich möchte eine Geburtstagsliste so sortieren, daß die Geburtstage in der Reihenfolge des laufenden
Jahres angezeigt werden. Wie geht das?
Erstellen Sie, wie in der Abbildung Geburtstagsliste zu sehen, drei zusätzliche Spalten. In Zelle F4 lautet die Formel =TAG(C4), in Zelle G4 =MONAT(C4) und in Zelle H4 =JAHR(C4).
Anschließend markieren Sie den gesamten Datenbereich (hier: B4:H8) und wählen über das Menü DATEN | SORTIEREN | SORTIEREN NACH: Monat, Anschließend: Tag und Zuletzt: Jahr.
|
[4]
Bei einem Ausdruck über mehrere Seiten soll auf jeder Seite das Firmenlogo im Kopfbereich angezeigt werden.
Wie geht das?
Plazieren Sie die Grafik im Kopfbereich des Tabellenblattes. Unter DATEI | SEITE EINRICHTEN | TABELLE
markieren sie mit dem Referenzfeld Wiederholungszeilen die betreffenden Zeilen, in denen sich die Grafik befindet.
|
[3]
Wie kann ich mir die letzte benutzte Zelle im Tabellenblatt mit einem
Makro anzeigen lassen?
Mit Hilfe der UsedRange-Eigenschaft wird der Bereich zurückgegeben,
der im Tabellenblatt verwendet wurde. Dies schließt auch die Zellen ein,
die nur eine Formatierung, (Zahlenformat, Rahmenlinie, Muster usw.) enthalten.
Demnach ist die letzte Zelle im benutzen Tabellenbereich identisch mit der letzten
Zelle des Bereiches, der durch die Eigenschaft UsedRange zurückgegeben wird.
Makro:
Sub LetzteZelle()
ActiveSheet.UsedRange. _
Cells(ActiveSheet.UsedRange.Cells.Count).Select
End Sub
|
[2]
Bei der Berechnung der Kalenderwoche gibt XL scheinbar ein
falsches Ergebnis aus. Wie wird die Kalenderwoche richtig berechnet?
XL berechnet die Kalenderwoche standardmäßig nach amerikanischer Norm.
Für Deutschland gilt die internationale Norm ISO 8601 (1973). 1976 wurde festgelegt,
dass die Woche mit dem Montag beginnt: DIN 1355 (1974), DIN EN 28601 (1993). Dies bedeutet für die Berechnung der Kalenderwoche:
Der 1. Januar eines Jahres gehört erst dann zur ersten Kalenderwoche, wenn dieser Tag auf
einen Montag, Dienstag, Mittwoch oder Donnerstag fällt. Falls der 1. Januar ein Freitag,
Samstag oder Sonntag ist, zählt er noch zur letzten Kalenderwoche des vorherigen Jahres.
Weiterhin können der 29., 30. und 31.12. eines Jahres schon zur 1. Kalenderwoche des neuen
Jahres gehören.
Zur Berechnung der Kalenderwoche nach DIN 1355 kann die folgende VBA-Funktion ab XL8 und die Tabellenblattfunktion
eingesetzt werden.
1.) VBA-Funktion:
Kopieren Sie die Funktion in ein
Standardmodul der Personl.xls :
Function DINKw(Datum as Date) as Integer
Dim lT as Long
lT = DateSerial(Year(Datum + (8 - Weekday(Datum)) Mod 7 - 3), 1, 1)
DINKw= ((Datum - lT - 3 + (WeekDay(lT) + 1) Mod 7)) \ 7 + 1
End Function
Im Tabellenblatt benutzen Sie die Funktion wie folgt.
Beispiel:
A1: 25.11.2001
Formel: =DINKw(A1)
Ergebnis: 47, der 25.11.2001 liegt in der 47. Kalenderwoche des Jahres 2001.
2.) Tabellenblattfunktion:
=KÜRZEN((A1-WOCHENTAG(A1;2)+11-("1/"&JAHR(A1+4-WOCHENTAG(A1;2))))/7)
Die Formel erwartet in Zelle A1 einen gültigen Datumswert.

Im Beispiel liegt der 14.09.2002 in der 37. Kalenderwoche des Jahres 2002.
|
[1]
Wie kann ich mir die RGB-Farbwerte der 56 Hintergrundfarben ermitteln lassen?
Die herunterladbare, gepackte BAS-Datei ( rgbwert.zip, 1 KB) listet alle Hintergrundfarben, deren Farbcodes, sowie deren RGB-Farbwerte auf.
Nach dem entpacken kann die rgbwert.bas in der VBA-Umgebung über den Menüpunkt DATEI | DATEI IMPORTIEREN (Strg+M) in ein Projekt importiert werden.
Weitergehende, grundsätzliche Informationen zu den Farben und der Farbverwaltung in XL.

|