Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

In einer Case Strucktur einen Wertebereich abfragen

Frage Entwicklung VB for Applications

Mitglied: captainchaos666

captainchaos666 (Level 1) - Jetzt verbinden

02.01.2007, aktualisiert 23:34 Uhr, 7383 Aufrufe, 3 Kommentare

Hallo, könnt ihr mir nochmals weiterhelfen?

Ich lese aus einer Exceltabelle Strings ein, je nachdem was eingelesen wird möchte ich die Casefunktionen aufrufen


Select Case sheet.Cells(Line,1).Value
Case "Minimal"

Case "Maximal"

Case "Wert_"

so und jetzt mein Problem, mir soll der Casefall "Wert_" nur dann aufgerufen werden wenn Wert von Wert_5 bis Wert_12 kommt (MöglichWert_1 bis Wert_999). Ich könnte für jeden Wert_5 bis Wert_12 einen Case Programmieren, möchte ich aber nicht unbedingt. Ich hab aber schon gelesen es gibt Character ranges: "[a-z]" will match any character in the range "a" to "z"

Kann ich meinem Programm in der Casestruktur einen Range mitgeben?

Gruß

captainchaos
Mitglied: bastla
02.01.2007 um 18:42 Uhr
Hallo captainchaos666!

Falls Du nicht ohnehin die "Wertnummer" (also den auf "Wert_" folgenden Teil) benötigst, würde ich sie trotzdem in etwa so einsetzen:

01.
strKennzeichen = sheet.Cells(Line,1).Value 'Variablenname willkürlich von mir festgelegt 
02.
Select Case strKennzeichen 
03.
Case "Minimal" 
04.
 
05.
Case "Maximal" 
06.
 
07.
Case Else 
08.
    If Left(strKennzeichen, 5) = "Wert_" Then 
09.
        intNummer = Val(Mid(strKennzeichen, 6)) 
10.
        If intNummer >= 5 And intNummer <= 12 Then 
11.
 
12.
        End If 
13.
    End If 
14.
End Select
Alternativ kannst Du natürlich noch ein weiteres "Select Case" nach Ermittlung der intNummer verwenden, um verschiedene Nummern-Bereiche voneinander zu unterscheiden, also zB
01.
Select Case intNummer 
02.
Case Is < 5 
03.
 
04.
Case 5 To 12 
05.
    
06.
Case Else 
07.
 
08.
End Select
Es gäbe zwar die Möglichkeit, den Bereich mit
01.
Case "Wert_05" to "Wert_12"
abzufragen, dazu müsste allerdings die Stellenanzahl der Nummern gleich sein (also "05" statt "5").

Letzte Variante, die mir dazu einfällt:
01.
Case "Wert_5", "Wert_6", "Wert_7", "Wert_8", "Wert_9", "Wert_10", "Wert_11", "Wert_12"
Schön ist's IMHO nicht, funktionieren wird es.

HTH
bastla

[Edit] Varianten mit "Wert_"-Strings ergänzt. [/Edit]
Bitte warten ..
Mitglied: captainchaos666
02.01.2007 um 23:24 Uhr
Hallo bastla,
Danke für deine Beispiele,
die Abfrage bei Case Else kann ich nicht machen, da ich dort bereits einen Sonderfall bearbeite!

Case "Wert_05" to "Wert_12" => Kennt mein Programm nicht (Fehlermeldung: Anweisung erwartet) muss ich diesen Befehl anders schreiben, so etwas in dieser Art würde mir gefallen

Gruß Alex
Bitte warten ..
Mitglied: bastla
02.01.2007 um 23:34 Uhr
Hallo captainchaos666!

die Abfrage bei Case Else kann ich nicht machen, da ich dort bereits einen Sonderfall bearbeite!
Dir bliebe ja immer noch der Else-Zweig des "If Left(..." für das, was Du vorher schon im "Case Else" hattest ...

Case "Wert_05" to "Wert_12" => Kennt mein Programm nicht (Fehlermeldung: Anweisung erwartet) muss ich diesen Befehl anders schreiben
Getestet bei mir zwar nur mit Excel 2003 - sollte aber auch in anderen Versionen (genau) so gehen.

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Windows 7
Computer OU auslesen bzw. abfragen (2)

Frage von mexx991 zum Thema Windows 7 ...

Netzwerkgrundlagen
gelöst Beliebigen Zeitserver auf Zeit abfragen (4)

Frage von blade999 zum Thema Netzwerkgrundlagen ...

Windows Netzwerk
gelöst Alle Drucker in verschiedenen Netzen Abfragen (4)

Frage von ChrisIO zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

Exchange Server
DNS Einstellung - zwei feste IPs für Mailserver (15)

Frage von ivan0s zum Thema Exchange Server ...