Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Application.Visible = False

Betrifft: Application.Visible = False von: Sonja
Geschrieben am: 10.11.2012 11:02:27

Hallo

Meine Excelmappe öffne ich mit "Application.Visible = False" damit wird nur eine UserForm angezeigt. Soweit ganz gut, wenn ich dann eine weitere Excelmappe öffne, dann werden alle Exceltabellen wieder angezeigt.

Wie kann ich dies verhindern?

Gruß Sonja

Betrifft: AW: Application.Visible = False von: Hajo_Zi
Geschrieben am: 10.11.2012 11:04:33

Hallo Sonnja,

mach doch im VBA Code nach dem öffnen
Application.Visible = False

Gruß Hajo


  

Betrifft: AW: Application.Visible = False von: Sonja
Geschrieben am: 10.11.2012 11:27:20

Hallo Hajo

Die Programmierte Exceldatei liegt in der Firma auf einem Server. Auf diese Datei können verschiedene
Mitarbeiter zu greifen.
Nochmal die Vorgehensweise, die VBA programmierte Exceldatei wird gestartet, es öffnet sich eine Userform
und Excel wird über Application.Visible = False ausgeblendet. Es ist also nur noch die UserForm sichtbar.
Jetzt öffnet der Mitarbeiter eine weitere Exceldatei, dabei wird Excel wieder eingeblendet.

Dies wollte ich aber verhindern.

Gruß Sonja


  

Betrifft: AW: Application.Visible = False von: Hajo_Zi
Geschrieben am: 10.11.2012 11:31:29

Hallo Sonja,

da Excel nicht sichtbar, bin ich davon ausgegangen das die Datei über UserForm geöffnet wird. Mir ist nicht klar wie man über Excel das ausgeblendet ist eine Datei öffnet.

Gruß Hajo


  

Betrifft: AW: Application.Visible = False von: Sonja
Geschrieben am: 10.11.2012 11:37:09

Hallo Hajo

Die UserForm ist geöffnet und der Anwender geht über den Windows Explorer in seinem Ordner,
wo er verschiedene Exceldateien gespeichert hat. Durch Doppelklick wird diese geöffnet.

Gruß Sonja


  

Betrifft: AW: Application.Visible = False von: Hajo_Zi
Geschrieben am: 10.11.2012 11:40:15

Hallo Sonja,

das wirst Du nur hin bekommen, wenn Du das Betriebssystem überwachts. Da ist Excel der falsche Ansatz.

Gruß Hajo


  

Betrifft: AW: Application.Visible = False von: Sonja
Geschrieben am: 10.11.2012 11:45:56

Hallo Hajo

Danke für Deine Bemühungen, vielleicht hat ja noch jemand einen Lösungsansatz.

Bitte weitere Lösungsvorschläge Posten, Danke

Sonja


  

Betrifft: AW: Application.Visible = False von: Nepumuk
Geschrieben am: 10.11.2012 12:10:36

Hallo,

in das Modul "DieseArbeitsmappe":

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If Not Saved Then
        Select Case MsgBox("Sollen Ihre Änderungen in '" & Name & _
                    "' gespeichert werden", vbExclamation Or vbYesNoCancel)
            Case vbYes
                Save
            Case vbNo
                Saved = True
            Case vbCancel
                Cancel = True
        End Select
    End If
    If Not Cancel Then Application.IgnoreRemoteRequests = False
End Sub

Private Sub Workbook_Open()
    Application.IgnoreRemoteRequests = True
End Sub

Wenn die Mappe nicht gespeichert wird, dann dieses Workbook_BeforeClose-Event benutzen:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.IgnoreRemoteRequests = False
End Sub

Gruß
Nepumuk


  

Betrifft: @Nepumuk,... von: Matze,Matthias
Geschrieben am: 10.11.2012 12:55:49

..jetzt hat der Matze wieder was gelernt,
ich klau mir mal die Zeilen,
klasse, werde dies bestimmt in einigen meiner neuen Projekte mit einfliesen lassen,...Danke
Gruß Matze


  

Betrifft: AW: @Nepumuk,... von: Matze,Matthias
Geschrieben am: 11.11.2012 15:31:01

Hallo Nepumuk,

und nun kommst dicke: hab mir mal eine BspMappe gemacht und dies ausprobiert:
klappt natürlich einwandfrei!!

A B E R: dezentes Problem:
wie komme ich wieder an die im Hintergrund arbeitende Mappe wieder heran?
Meine Userform kann ich schließen und Excel läuft im HG ständig weiter,...schnief
Sollte vorher angelegt sein:
Ich benötige einen weiteren Button auf der UF der mir Excel speichert und schließt!

Wie komme ich aber nun abn die Mappe , ohne diese Option?

Gruß dankender Matze


  

  

Betrifft: AW: @Nepumuk,... von: Nepumuk
Geschrieben am: 11.11.2012 19:30:49

Hallo,

was willst du genau, einen Button zum Einblenden der Mappe ???

Wenn du das Userform schließt und ohne speichern zu wollen Excel beenden willst, dann so:

Private Sub Workbook_Open()
    With Application
        .Visible = False
        .IgnoreRemoteRequests = True
    End With
    UserForm1.Show
    Saved = True
    With Application
        .IgnoreRemoteRequests = False
        .Quit
    End With
End Sub

Gruß
Nepumuk


  

Betrifft: AW: Application.Visible = False von: Matze,Matthias
Geschrieben am: 10.11.2012 12:19:49


In der Userform , hinter einem CommandButton:

Private Sub CommandButton1_Click()'anpassen
Call OpenExplorer
End Sub
In ein Modul

Sub OpenExplorer()
Dim Pfad As String
Pfad = "C:\Archiv\ 'anpassen wo die zu öffnenden Dateien"
Application.Dialogs(xlDialogOpen).Show Pfad
End Sub Wenn es untersachiedliche Orte gibt wo die zu öffnenden Dateien liegen.
dann nur : Application.Dialogs(xlDialogOpen).Show

Das Problem besteht aber immer noch das die Datei im vordergrund auf geht.
Deine Uf aber auch, Vorschlag hier wäre das du mit UF im Vollbildmodus arbeitest.
Private Sub UserForm_Initialize() 'Userform Vollbild
   Me.Left = Application.Width / 2 - Me.Width / 2 
   Me.Top = Application.Height / 2 - Me.Height / 2 
End Sub


Hilft das soweit?
Matze


  

Betrifft: AW: Application.Visible = False von: Sonja
Geschrieben am: 10.11.2012 12:24:34

Hallo

Vielen Dank für Eure Hilfe, habe die Lösung von Nepumuk eingearbeitet, jetzt funktioniert es genau wie ich es wollte.

Gruß Sonja