<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    <title>Naggy - VBA</title>
    <link>http://www.naggy.de/</link>
    <description>just a Blog</description>
    <dc:language>de</dc:language>
    <generator>Serendipity 1.4 - http://www.s9y.org/</generator>
    <pubDate>Thu, 17 Jul 2008 19:05:25 GMT</pubDate>

    <image>
        <url>http://www.naggy.de/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Naggy - VBA - just a Blog</title>
        <link>http://www.naggy.de/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>VBA : Die IF, ELSEIF und ELSE Anweisung</title>
    <link>http://www.naggy.de/archives/94-VBA-Die-IF,-ELSEIF-und-ELSE-Anweisung.html</link>
            <category>Access</category>
            <category>Excel</category>
            <category>VBA</category>
    
    <comments>http://www.naggy.de/archives/94-VBA-Die-IF,-ELSEIF-und-ELSE-Anweisung.html#comments</comments>
    <wfw:comment>http://www.naggy.de/wfwcomment.php?cid=94</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.naggy.de/rss.php?version=2.0&amp;type=comments&amp;cid=94</wfw:commentRss>
    

    <author>nospam@example.com (J.F.)</author>
    <content:encoded>
    
&lt;p&gt;Bei der Programmierung kommt man häufig an Stellen, bei denen sich der Programmablauf verzweigt. Dazu gibt es in der Programmiersprache die IF Konstukte die man auch erweitern kann. Aber zunächst das einfachste Beispiel.&lt;/p&gt;&lt;h3&gt;IF Beispiel&lt;/h3&gt;&lt;p&gt;Wir wollen nur am 1. Tag im Monat etwas machen. Der Tag steht in der Variablen int_Tag.&lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;IF int_Tag = 1 THEN
    MsgBox (&amp;quot;1. Tag im Monat&amp;quot;)
ENDIF&lt;/font&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;h3&gt;IF ELSE Beispiel&lt;/h3&gt;&lt;p&gt;Wir wollen nur am 1. Tag im Monat etwas machen, an allen anderen Tagen soll was anderes passieren. Der Tag steht in der Variablen int_Tag.&lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;IF int_Tag = 1 THEN
    MsgBox (&amp;quot;1. Tag im Monat&amp;quot;)
ELSE
    MsgBox (&amp;quot;anderer Tag im Monat&amp;quot;)
ENDIF&lt;/font&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;h3&gt;IF ELSEIF Beispiel&lt;/h3&gt;&lt;p&gt;Wir wollen nur am 1. Tag und am 5. Tag im Monat etwas machen. Der Tag steht in der Variablen int_Tag.&lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;IF int_Tag = 1 THEN
    MsgBox (&amp;quot;1. Tag im Monat&amp;quot;)
ELSEIF int_Tag = 5 THEN
    MsgBox (&amp;quot;5. Tag im Monat&amp;quot;)
ENDIF&lt;/font&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;h3&gt;IF ELSEIF ELSE Beispiel&lt;/h3&gt;&lt;p&gt;Wir wollen nur am 1. Tag und am 5. Tag im Monat etwas machen, an allen anderen Tagen soll etwas anderes passieren. Der Tag steht in der Variablen int_Tag.&lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;IF int_Tag = 1 THEN
    MsgBox (&amp;quot;1. Tag im Monat&amp;quot;)
ELSEIF int_Tag = 5 THEN
    MsgBox (&amp;quot;5. Tag im Monat&amp;quot;)
ELSE
    MsgBox (&amp;quot;Weder 1. noch 5. Tag im Monat&amp;quot;)
ENDIF&lt;/font&gt;&lt;/pre&gt;&lt;/blockquote&gt;
&lt;h3&gt;Grenzen&lt;/h3&gt;&lt;p&gt;Das ganze sollte man aber nicht übertreiben, denn solche Strukturen sind sehr unübersichtlich und schlecht zu warten. Darüber hinaus sind sie auch noch sehr langsam bzw. Rechenintensiv da ständig ein Variablenvergleich stattfindet. Oft ist eine &lt;a title=&quot;Die Select Case Anweisung&quot; target=&quot;_blank&quot; href=&quot;http://www.naggy.de/archives/56-VBA-Die-Select-Case-Anweisung.html&quot;&gt;Select Case Struktur&lt;/a&gt; wesentlich effektiver und schöner anzuschaeuen.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Thu, 17 Jul 2008 21:05:25 +0200</pubDate>
    <guid isPermaLink="false">http://www.naggy.de/archives/94-guid.html</guid>
    
</item>
<item>
    <title>VBA : Unterschied von Function und Sub</title>
    <link>http://www.naggy.de/archives/70-VBA-Unterschied-von-Function-und-Sub.html</link>
            <category>VBA</category>
    
    <comments>http://www.naggy.de/archives/70-VBA-Unterschied-von-Function-und-Sub.html#comments</comments>
    <wfw:comment>http://www.naggy.de/wfwcomment.php?cid=70</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.naggy.de/rss.php?version=2.0&amp;type=comments&amp;cid=70</wfw:commentRss>
    

    <author>nospam@example.com (J.F.)</author>
    <content:encoded>
    
&lt;p&gt;Hallo,&lt;/p&gt;&lt;p&gt;heute geht es um die kleine Frage was ist der Unterschied von Funktionen und Subs in VBA.&lt;/p&gt;&lt;p&gt;Subs sind Unterprogramme, Sie werden häufig benutzt um Programme etwas strukturierter zu gestalten. Beiden (Funktionen und Subs) kann man Parameter übergeben, die dann in den Unterprogramm benutzt werden. Aber nur bei Funktionen kann man auch einen Wert zurückgeben.&lt;/p&gt;&lt;p&gt;Das heißt wenn wir ein Unterprogramm brauchen das uns etwas zurückgeben soll dann brauchen wir eine Funktion. Andernfalls geht auch ein Sub.&lt;/p&gt;&lt;p /&gt; 
    </content:encoded>

    <pubDate>Fri, 04 Jan 2008 12:53:20 +0100</pubDate>
    <guid isPermaLink="false">http://www.naggy.de/archives/70-guid.html</guid>
    
</item>
<item>
    <title>VBA : Die Select Case Anweisung</title>
    <link>http://www.naggy.de/archives/56-VBA-Die-Select-Case-Anweisung.html</link>
            <category>Access</category>
            <category>Excel</category>
            <category>VBA</category>
    
    <comments>http://www.naggy.de/archives/56-VBA-Die-Select-Case-Anweisung.html#comments</comments>
    <wfw:comment>http://www.naggy.de/wfwcomment.php?cid=56</wfw:comment>

    <slash:comments>7</slash:comments>
    <wfw:commentRss>http://www.naggy.de/rss.php?version=2.0&amp;type=comments&amp;cid=56</wfw:commentRss>
    

    <author>nospam@example.com (J.F.)</author>
    <content:encoded>
    
&lt;p&gt;Mit einer &lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Select Case&lt;/b&gt;&lt;/font&gt; Anweisung kann man sehr elegant eine Menge &lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;IF ELSE&lt;/b&gt;&lt;/font&gt; Bedingungen umgehen. Dazu müssen aber ein paar Bedingungen erfüllt sein.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Man darf sich immer nur auf eine Variable/Ausdruck beziehen, die man überprüfen will.&lt;/li&gt;&lt;li&gt;Alle möglichen &lt;strike&gt;Stati&lt;/strike&gt; Status&lt;span style=&quot;padding: 0pt; background-color: yellow; color: black; display: inline; font-size: inherit;&quot;&gt;&lt;/span&gt; der Variable sollten bekannt sein.&lt;/li&gt;&lt;li&gt;Es sollte eine Default (Standard) Anweisung geben.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Die Syntax sieht wie folgt aus.&lt;/p&gt;&lt;p /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;b&gt;Select Case (expression)&lt;br /&gt;Case option1&lt;br /&gt;    statement1&lt;br /&gt;Case option2&lt;br /&gt;    statement2&lt;br /&gt;    .&lt;br /&gt;    .&lt;br /&gt;    .&lt;br /&gt;Case optionn&lt;br /&gt;    statementn&lt;br /&gt;Case Else&lt;br /&gt;    statementd&lt;br /&gt;End Select&lt;/b&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;p /&gt;&lt;p&gt;Dabei ist expression die Variable oder der Ausdruck der zu überprüfen ist. &lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Case&lt;/b&gt;&lt;/font&gt; leitet den Fall ein der zu überprüfen ist. und &lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Case Else&lt;/b&gt;&lt;/font&gt; leitet den Default (Standard) Fall ein der ausgeführt wird wenn nichts vorheriges passt.&lt;/p&gt;&lt;p&gt;Bei den einzelnen Fällen gibt es noch verschiedene Methoden der Schreibweise. Mit der man sich geschickt wieder ein paar Zeilen Code sparen kann.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Case 1&lt;/b&gt;&lt;/font&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Führe aus wenn Ausdruck gleich 1.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Case 2, 4&lt;/b&gt;&lt;/font&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Führe aus wenn Ausdruck gleich 2 oder 4.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Case 5 To 6&lt;/b&gt;&lt;/font&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Führe aus wenn Ausdruck zwischen 5 und 6.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;font face=&quot;courier new,courier,monospace&quot;&gt;&lt;b&gt;Case IS &amp;gt; 6&lt;/b&gt;&lt;/font&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Führe aus wenn Ausdruck ist größer als 6.&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p&gt;Zum Schluss nochmal ein Beispiel, das alle außergewöhnlichen Case Fälle darstellt&lt;/p&gt;&lt;p /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;b&gt;Select Case Variable&lt;br /&gt;Case IS &amp;lt; 5    	&lt;br /&gt;    	Debug.Print &amp;quot;kleiner als 5&amp;quot;&lt;br /&gt;Case 6, 7, 8   &lt;br /&gt;   	 Debug.Print &amp;quot;6, 7 oder 8&amp;quot;&lt;br /&gt;Case 8 TO 12&lt;br /&gt;	Debug.Print &amp;quot;Zwischen 8 und 12&amp;quot;&lt;br /&gt;Case Else    &lt;br /&gt;   	Debug.Print &amp;quot;Nicht zwischen 1 und 12&amp;quot;&lt;br /&gt;End Select&lt;/b&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;p&gt;So viel Spaß beim hacken in VBA.&lt;br /&gt;&lt;br /&gt;
&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 18 Jun 2007 20:33:00 +0200</pubDate>
    <guid isPermaLink="false">http://www.naggy.de/archives/56-guid.html</guid>
    
</item>

</channel>
</rss>