Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 8 von 8

Thema: VBA(Excel) Automatische Antowrt auf MsgBox

  1. #1
    Registriert seit
    06.07.2015
    Beiträge
    53
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, Menschen.

    Ich hoffe, ich bin hier in dem Forumsteil richtig...

    Zu meiner Frage:
    Ich schreibe ein kleines Programm mit VBA in Excel. Bei der Ausführung wird unter anderem eine Funktion ausgeführt, die dafür sorgt, dass Excel mir eine Message-Box zeigt ("In den Arbeitsblättern, die Sie löschen möchten, könnten Daten vorhanden sein. Um die Blätter endgültig zu löschen, drücken Sie Löschen." Löschen/Abbrechen)
    Ich möchte nun in meinem Programm eine Zeile haben, die diese Abfrage automatisch mit "Löschen" beantwortet, sodass der Benutzer die Abfrage nicht manuell wegklicken muss.

    How do I do?

    Mit freundlichen Grüßen
    Januar
    If in doubt, set something on fire and restart.
    Zitieren Zitieren VBA(Excel) Automatische Antowrt auf MsgBox  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.194
    Danke
    389
    Erhielt 2.294 Danke für 1.908 Beiträge

    Standard

    Was heißt "in meinem Programm" ? Du meinst hier das Excel-Sheet ?
    Du kannst eine MessageBox nicht fernsteuern - du kannst aber ein weiteres Script / eine weitere Methode erstellen, die das Gleiche ohne die MessageBox-Abfrage und der anschließenden Auswertung des Results macht.
    Oder du übergibst der gleichen Methode einen Parameter aus dem du ableitest, dass die MessageBox-Abfrage komplett übergangen werden soll. In diesem Fall wird die Methode ja sehr wahrscheinlich von einem anderen Punkt aufgerufen ...

    Gruß
    Larry

  3. #3
    Januar ist offline Benutzer
    Themenstarter
    Registriert seit
    06.07.2015
    Beiträge
    53
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Genau, die Module und Sub-Prozeduren des Excel-Sheets sind gemeint.
    In der Excel-Hilfe steht auch, dass das Dialogfeld standardmäßig angezeigt wird. Meine Frage zielt jetzt darauf ab, diesen Standard zu umgehen.
    Ist das möglich?

    @Larry: Wie kann ich denn auf die MessageBox-Abfrage Einfluss nehmen?
    If in doubt, set something on fire and restart.

  4. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.194
    Danke
    389
    Erhielt 2.294 Danke für 1.908 Beiträge

    Standard

    Zitat Zitat von Januar Beitrag anzeigen
    @Larry: Wie kann ich denn auf die MessageBox-Abfrage Einfluss nehmen?
    Auf die Messagebox-Abfrage selbst kannst du keinen Einfluß nehmen - du kannst sie nur halt ggf. umgehen.
    Um dazu aber konkreter werden zu können solltest du mal das besagte Script hier einstellen ...

    Gruß
    Larry

  5. #5
    Januar ist offline Benutzer
    Themenstarter
    Registriert seit
    06.07.2015
    Beiträge
    53
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Das "Script" ist nur ein aufgezeichnetes Makro. Dabei wurde ein Tabellenblatt ausgewählt (Rechtsklick) und dann gelöscht.

    Code:
    ThisWorkbook.Worksheets("Name").Select
    ActiveWindow.SelectedSheets.delete
    Die Abfrage ist halt das Windows-typische "Sind Sie sicher?". Und ich möchte das Programm derart ummodellieren, dass Windows nicht fragt, bzw. dass der Benutzer nicht antworten braucht.
    If in doubt, set something on fire and restart.

  6. #6
    Registriert seit
    20.05.2009
    Ort
    63930 Neunkirchen
    Beiträge
    55
    Danke
    4
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hast Du schon mal an so etwas wie das gedacht:

    Code:
    Application.DisplayAlerts = False
    ActiveWindow.SelectedSheets.Delete
    Application.DisplayAlerts = True
    Das sollte die Abfrage unterdrücken.
    Einfach vor Deinem Löschen die Alerts abschalten und danach wieder an.

  7. #7
    Januar ist offline Benutzer
    Themenstarter
    Registriert seit
    06.07.2015
    Beiträge
    53
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Danke, andy, das hat den gewünschten Effekt erzielt
    If in doubt, set something on fire and restart.

  8. #8
    Registriert seit
    13.03.2007
    Ort
    Nürnberg
    Beiträge
    424
    Danke
    45
    Erhielt 33 Danke für 30 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    > Du kannst eine MessageBox nicht fernsteuern
    wenn man mit der Maus auf OK drückt, wird eine Windowsmessage gesendet.
    So eine Message kann auch von anderen programmen kommen [ PostMessage(...) ]

    So ein, nicht ganz einfaches, proggi hab ich schon mal gemacht, zum "fernsteuern" .
    "Du kannst eine MessageBox nicht fernsteuern" so schon. Ist wohl ein hack.
    Kabelsalat ist Gesund
    (vom CCC abgekupfert)

    Prognosen sind schwierig,
    besonders wenn sie die Zukunft betreffen.
    (Ursprung nicht wirklich bekannt)



Ähnliche Themen

  1. ADS VBA (Excel)
    Von mkersch im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 17.01.2012, 11:09
  2. WinCC VBA auf Excel zugreifen
    Von Move im Forum HMI
    Antworten: 14
    Letzter Beitrag: 03.03.2011, 15:32
  3. VBA-Excel-OPC
    Von KNEFI im Forum Hochsprachen - OPC
    Antworten: 10
    Letzter Beitrag: 23.01.2009, 08:17
  4. Frage zu VBA unter Excel
    Von steffen21m im Forum PC- und Netzwerktechnik
    Antworten: 2
    Letzter Beitrag: 17.07.2007, 23:23
  5. rs 232 nach Excel in VBA
    Von lorenz2512 im Forum Hochsprachen - OPC
    Antworten: 11
    Letzter Beitrag: 20.06.2005, 22:24

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •