Top-Themen

Aktuelle Themen (A bis Z)

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
GELÖST

VB Syntax Makro if then else

Frage Entwicklung VB for Applications

Mitglied: coxsrcrub

coxsrcrub (Level 2) - Jetzt verbinden

13.11.2007, aktualisiert 14.11.2007, 6377 Aufrufe, 3 Kommentare

if "textxy" *18* then ........... end if

Guten Morgen zusammen,

ich baue gerade ein Makro unter W2003 welches unter anderem einen Wert aus dem Feld "Text59" auslesen soll um dann das aktive Dokument weiter zu bearbeiten. Es soll lediglich geprüft werden ob z.B. die Zahl/Variable 18 enthalten ist. Ich finde irgendwie keine Beschreibung wie ich festlegen kann das der Wert nicht gleich 18 ist sondern nur Anteilig die Zahl 18 enthält. Die Zeichen * und % sind mir als erstes im Gedanken gekommen, sind aber falsch.

Wer hilft mir mal schnell auf die Sprünge?

Hier mal der bisherige Syntax dazu:

H18 und Datei wurden vorab per Dim definiert.

So in etwa habe ich mir das gedacht, funktioniert natürlich nur wenn der Wert genau 18 ist!
Wenn der Wert nun eben nicht genau 18 entspricht bekomme ich dann natürlich einen Laufzeitfehler 13, weil die Werte nicht der Vorgabe entsprechen.

If ActiveDocument.Bookmarks("Text59").Range.Text = 18 Then ActiveDocument.SaveAs H18 & Datei
MsgBox "Das Dokument wurde verarbeitet"

da ich nun eine ziemlich dilettantische Übergangslösung einsetze bin ich für alle weiteren Lösungen offen. Die Select Case Anweisung scheint ja hierfür auch irgendwie möglich zu sein. Der betreffende Auszug aus dem "Meisterwerk" sieht derzeit wie folgt aus:

If (ActiveDocument.Bookmarks("Text59").Range.Text = "18") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18a") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18b") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18c") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18d") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "Haus18") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "Haus 18") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "H18") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18A") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18B") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18C") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "18D") Then
ActiveDocument.SaveAs H18 & Datei
MsgBox "Das Dokument wurde für die Kostenstelle 18 verarbeitet"
End If


Grüße Jörg
Mitglied: RDiller
13.11.2007 um 17:07 Uhr
Probier doch mal die INSTR Funktion

z.B.:
Suchtext = ActiveDocument.Bookmarks("Text59").Range.Text
gefunden = instr(Suchtext,"18") 'Wenn der Suchstring vorhanden, gibt die Funktion TRUE zurück
if gefunden
ActiveDocument.SaveAs H18 & Datei
MsgBox "Das Dokument wurde für die Kostenstelle 18 verarbeitet"
End If
Bitte warten ..
Mitglied: coxsrcrub
13.11.2007 um 18:09 Uhr
Hi,

das sieht gut aus. Werde ich gleich Morgen mal austesten. Die Funktion war sogar meine erste Wahl, habe den Syntax offensichtlich wohl vorab völlig verdreht. 0

Grüße Jörg
Bitte warten ..
Mitglied: coxsrcrub
14.11.2007 um 10:16 Uhr
Hallo,

ist genau das was ich wollte.

Der betreffende Auszug sieht nun wie folgt aus.

Suchtext = ActiveDocument.Bookmarks("Text59").Range.Text
gefunden = InStr(Suchtext, "18")
If gefunden Then
ActiveDocument.SaveAs H18 & Datei '
MsgBox "Das Dokument wurde für die Kostenstelle 18 verarbeitet"
End If

Lediglich für die Kostenstellen 1 habe ich weiter die alte Syntax stehen gelassen. Eine 01 oder eine andere Bezeichnung bekomme ich in die Köpfe nicht rein. Man sieht ja schon das die Möglichen eingaben so versucht werden über das Makro zu Standardisieren.

If ActiveDocument.Bookmarks("Text59").Range.Text = "1" Or (ActiveDocument.Bookmarks("Text59").Range.Text = "1a") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "1b") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "1c") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "1A") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "1B") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "1C") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "Haus1") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "Haus 1") Or (ActiveDocument.Bookmarks("Text59").Range.Text = "H1") Then
ActiveDocument.SaveAs H1 & Datei
MsgBox "Das Dokument wurde für die Kostenstelle 1 verarbeitet"
End If

Grüße Jörg
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Get-Aduser - If then else???
gelöst Frage von MuHMuHBatch & Shell2 Kommentare

Hallo Zusammen, ich exportiere mit nachfolgendem Code (nachfolgende ein kleiner Auszug) Daten aus dem ADS in eine CSV-Datei, die ...

Windows XP
Syntax für - Ausführen als...-
Frage von FordPerfectWindows XP3 Kommentare

Syntax für "ausführen als"Hallo liebe Freunde! ich versuche auf einem XP rechner eine Software automatisch zu starten. Bei mir ...

VB for Applications
If Then Next
gelöst Frage von AximandVB for Applications12 Kommentare

Hallo, gibt es eigentlich eine Möglichkeit den nächsten Durchlauf einer Schleife vorzeitig zu initiieren? Hier also, wenn Zelle i,3 ...

Batch & Shell
If .then in einer Batch
gelöst Frage von NewNoobBatch & Shell2 Kommentare

Hallo, ist es möglich ,dass in einer batch eine ift then abfrage stattfinden kann und zwar habe ich eine ...

Neue Wissensbeiträge
Microsoft Office

Office 2010 Starter wieder installieren auf einer frischen Windows-Installation

Tipp von Lochkartenstanzer vor 14 StundenMicrosoft Office1 Kommentar

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 16 StundenDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

SAN, NAS, DAS

Backdoor Zugang und Upload-Bug in vielen Western Digital MyCloud Geräten

Information von Frank vor 17 StundenSAN, NAS, DAS2 Kommentare

James Bercegay von der Firma Gulftech hat die Fehler an Western Digital gemeldet und das Unternehmen stellt bereits ein ...

Microsoft Office

Outlook 2016 - Beim Weiterleiten keine PDF Anhänge mehr - KB4011626 entfernen

Erfahrungsbericht von Deepsys vor 20 StundenMicrosoft Office1 Kommentar

Wenn ihr feststellt das ihr beim Weiterleiten von E-Mails keine PDF Anhänge mehr versendent, dann dankt Microsoft. Diese tolle ...

Heiß diskutierte Inhalte
Windows Netzwerk
Drucker isolieren in Windows Domäne
gelöst Frage von lcer00Windows Netzwerk14 Kommentare

Hallo zusammen, habe eine Windows-AD (2012R2) in der es einen Druckerserver gibt. Mittlerweile verliere ich das Vertrauen in die ...

Server-Hardware
Veeam Backup Server stürzt alle paar Tage ab
Frage von Leo-leServer-Hardware11 Kommentare

Hallo Forum, ich habe momentan folgendes Problem. Veeam Backup and Replication 9.5 u2 auf voll gepatchten DL 380 G7 ...

Windows 10
Win10 Laptop findet keine Netzwerkgeräte und Freigaben mehr
Frage von CoolzeroWindows 1010 Kommentare

Hi, seit ein paar Tagen habe ich das Problem das mein Windows 10 Laptop keine Geräte mehr in der ...

Batch & Shell
Dateien verschieben mit batch
gelöst Frage von michi-ffmBatch & Shell10 Kommentare

Hallo Zusammen hat jemand evtl eine Idee? Zunächst hier das Skript: Leider werden keine UNC-Pfade unterstüzt, kann mir jemand ...