Thema Datum  Von Nutzer Rating
Antwort
30.07.2014 17:48:17 Lisa
NotSolved
30.07.2014 18:18:17 Gast75644
NotSolved
30.07.2014 19:29:34 Lisa
NotSolved
30.07.2014 22:54:40 Gast94343
NotSolved
31.07.2014 08:38:55 jhs
NotSolved
31.07.2014 13:33:28 Gast34183
NotSolved
31.07.2014 20:15:07 Lisa
NotSolved
Blau Prüfen ob Bild vorhanden ist
01.08.2014 18:43:09 jhs
NotSolved
01.08.2014 18:45:11 jhs
NotSolved
04.08.2014 12:23:46 Lisa
NotSolved
04.08.2014 14:12:12 jhs
NotSolved

Ansicht des Beitrags:
Von:
jhs
Datum:
01.08.2014 18:43:09
Views:
1058
Rating: Antwort:
  Ja
Thema:
Prüfen ob Bild vorhanden ist

Hallo Lisa,

tut mir Leid, hatte nicht eher Zeit hier wieder reinzuschauen. Allerdings habe ich jetzt ein paar Verständnisfragen. Ich war am Anfang davon ausgegangen, dass es sich um Images handelt. Nun deuten allerdings die Namen cmd... (die ich jetzt erst richtig wahrnehme, sorry!) eher auf CommandButtons hin. Wenn das so ist, funktioniert die Abfrage wie in meinem Beispiel nicht.

If cmd1.Picture.Handle = 0 Then
  MsgBox "Kein Bild"
End If

Unter der Voraussetzung, dass definitiv immer nur 1 CommandButton (wenn es denn welche sind) ein Bild enthält, gestaltet sich die Abfrage relativ einfach:

Dim i As Integer
i = -(CommandButton1.Picture.Handle <> 0) - _
    2 * (CommandButton2.Picture.Handle <> 0) - _
    3 * (CommandButton3.Picture.Handle <> 0) - _
    4 * (CommandButton4.Picture.Handle <> 0)

Je nachdem, welcher Button das Bild enthält, liefert der Ausdruck 1, 2, 3 oder 4 zurück. Wenn deine 4 Berechnungsversionen in 4 verschiedenen Makros stehen, die Berechnung1, Berechnung2 usw.heißen mögen, kannst du sie so aufrufen:

Application.Run "Berechnung" & i

Die 4 Makros müssen in einem Modul stehen und Public sein.

Wenn alle Berechnungen in einem Makro stehen, rufst du es nach der Ermittlung von i so auf:

Berechnung i

Das eigentliche Makro kann dann im Modul der Userform stehen und folgenden Aufbau haben:

Private Sub Berechnung(intWert As Integer)
  Select Case intWert
    Case 1
      ' erste Version
    Case 2
      ' zweite Version
    Case 3
      ' dritte Version
    Case 4
      ' vierte Version
  End Select
End Sub

Wenn keine Eingabe in der Textbox erfolgt, tritt natürlich das KeyPress-Event nicht auf, deshalb musst du den Wert 0 in einer anderen Prozedur in die Zielzelle schreiben OK-Button oder auch in Userform_Terminate:

If TextBox 1 = "2 Then Worksheets("Tabelle1").Range("V26") = 0

Das war jetzt allerhand zum Ausprobieren, wenn du nach Fragen hast, melde dich einfach noch mal.

Schönes Wochenende!

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
30.07.2014 17:48:17 Lisa
NotSolved
30.07.2014 18:18:17 Gast75644
NotSolved
30.07.2014 19:29:34 Lisa
NotSolved
30.07.2014 22:54:40 Gast94343
NotSolved
31.07.2014 08:38:55 jhs
NotSolved
31.07.2014 13:33:28 Gast34183
NotSolved
31.07.2014 20:15:07 Lisa
NotSolved
Blau Prüfen ob Bild vorhanden ist
01.08.2014 18:43:09 jhs
NotSolved
01.08.2014 18:45:11 jhs
NotSolved
04.08.2014 12:23:46 Lisa
NotSolved
04.08.2014 14:12:12 jhs
NotSolved