ABOUT Visual Basic Programmieren Programmierung Download Downloads Tips & Tricks Tipps & Tricks Know-How Praxis VB VBA Visual Basic for Applications VBS VBScript Scripting Windows ActiveX COM OLE API ComputerPC Microsoft Office Microsoft Office 97 Office 2000 Access Word Winword Excel Outlook Addins ASP Active Server Pages COMAddIns ActiveX-Controls OCX UserControl UserDocument Komponenten DLL EXE
Diese Seite wurde zuletzt aktualisiert am 20.04.2001

Diese Seite wurde zuletzt aktualisiert am 20.04.2001
Aktuell im ABOUT Visual Basic-MagazinGrundlagenwissen und TechnologienKnow How, Tipps und Tricks rund um Visual BasicActiveX-Komponenten, Controls, Klassen und mehr...AddIns für die Visual Basic-IDE und die VBA-IDEVBA-Programmierung in MS-Office und anderen AnwendungenScripting-Praxis für den Windows Scripting Host und das Scripting-ControlTools, Komponenten und Dienstleistungen des MarktesRessourcen für Programmierer (Bücher, Job-Börse)Dies&Das...

Themen und Stichwörter im ABOUT Visual Basic-Magazin
Code, Beispiele, Komponenten, Tools im Überblick, Shareware, Freeware
Ihre Service-Seite, Termine, Job-Börse
Melden Sie sich an, um in den vollen Genuss des ABOUT Visual Basic-Magazins zu kommen!
Informationen zum ABOUT Visual Basic-Magazin, Kontakt und Impressum

Zurück...

Monatsnummern

Zurück...


Anzeige

(-hg) mailto:hg_monthnum@aboutvb.de

Zum vollen oder abgekürzten Namen eines Monats anhand seiner Nummer (1 bis 12) verhilft Ihnen die Format$-Funktion. Dazu konstruieren Sie zunächst mittels der Funktion DateSerial ein beliebiges Datum, wobei Sie die Nummer des betreffenden Monats verwenden und Tag und Jahr beliebig wählen können. Von der Format$-Funktion erhalten Sie dann den Namen des Monats in der im System eingestellten Landessprache - je nach Formatierungsangabe, "mmm" für den abgekürzten Namen, und "mmmm" für den vollen Namen. Die Hilfsfunktion NumToMonth fasst die Aufrufe beider Funktionen zusammen und prüft zugleich, ob eine gültige Monatsnummer übergeben worden ist. Wurde eine ungültige Nummer übergeben, gibt sie einen leeren String zurück. Setzen Sie den optionalen Parameter Short auf True, erhalten Sie den abgekürzten Monatsnamen, ansonsten den vollen Monatsnamen.

Public Function NumToMonth(MonthNum As Integer, _
 Optional ByVal Short As Boolean) As String

  Select Case MonthNum
    Case 1 To 12
      If Short Then
        NumToMonth = Format$(DateSerial(2000, MonthNum, 1), "mmm")
      Else
        NumToMonth = Format$(DateSerial(2000, MonthNum, 1), "mmmm")
      End If
  End Select
End Function

Zur Umkehrung, also zur Ermittlung der Monatsnummer aus einem gegebenen Monatsnamen oder seiner Abkürzung, bietet Visual Basic anscheinend keine derart direkte Unterstützung. Es gibt zwar die Funktion Month, doch erwartet diese ein komplettes gültiges Datum als Parameter. Eine Funktion, die uns ähnlich wie DateSerial ein Datum liefern könnte, jedoch einen Monatsnamen in String-Form annehmen würde, gibt es leider nicht. Allerdings ist die CDate-Funktion in der Lage, selbst noch aus ziemlich "verhunzten" Datumsangaben in String-Form noch ein gültiges Datum machen.

CDate("1. Januar 2001")
CDate("1. Janu 2001")
CDate("1.jan")
CDate("jan 1. 2001")
CDate("Janua 1.01")
CDate("jan 2001 1")
CDate("jan 1")

Alle diese Varianten werden schön säuberlich zu einem 1.1.2001 konvertiert - vorausgesetzt, der darin steckende Monatsname besteht aus dem ersten, mindestens drei Zeichen langen Teil eines Monatsnamens in der im System eingestellten Landessprache. Die letzte der oben stehenden Varianten bildet das effizienteste, weil kürzeste Modell für die Konstruktion eines Strings, den wir nun nach seiner Konvertierung mit CDate an die Month-Funktion verfüttern können. Die folgende Funktion MonthToNum gibt 0 zurück, wenn ein nicht als Monatsname identifizierbarer String übergeben worden wurde.

Public Function MonthToNum(MonthName As String) As Integer
  On Error Resume Next
  MonthToNum = Month(CDate(MonthName & " 1"))
End Function

Modul modMonthNum (modMonthNum.bas - ca. 0,7 KB)


Artikel
Zum Download-Bereich dieses Artikel
Mail an den Autor dieses Artikels

KnowHow
Zur KnowHow-Übersicht

KnowHow-Themen
Themen - Allgemeines
Themen - Entwicklungsumgebung (VB-IDE)
Themen - Forms
Themen - Steuerelemente (Controls)
Themen - Grafik
Themen - Dateien
Themen - UserControls
Themen - Einsteiger-Tipps
Themen - Wussten Sie...?

Übersicht nach Titeln in alphabetischer Reihenfolge
Übersicht nach Erscheinungsdatum

Schnellsuche




Zum Seitenanfang

Copyright © 1999 - 2017 Harald M. Genauck, ip-pro gmbh  /  Impressum

Zum Seitenanfang

Zurück...

Zurück...

Download Internet Explorer