humpi88
Goto Top

Excel Formel Wenn inhalt in Zelle A muss zwingend ein Inhalt in Zelle B eingetragen werden

Ich habe ein Problem mit einer Excel Formel

Und zwar möchte ich wenn ich in Zelle A einen Text eintrage das die Zelle B ZWINGEND Ausgefüllt werden muss.


zb.

Zelle A steht Dienstreise also muss ZWINGEND in Zelle B die Kostenstelle eingetragen werden. Das ganze soll sich so auswirken das man das Excelsheet nicht speichern kann bevor die zelle B nicht ausgefüllt ist.

Kann mir jemand helfen?

danke

LG Humpi

Content-ID: 174987

Url: https://administrator.de/contentid/174987

Ausgedruckt am: 22.11.2024 um 20:11 Uhr

AndreasHoster
AndreasHoster 20.10.2011 um 11:34:22 Uhr
Goto Top
Wundert mich nicht, da es mit einer Formel nicht geht.

Etwas VBA im Workbook_BeforeSave (und möglicherweise Workbook_BeforePrint) Ereignis ist schon nötig.
Im VBA Editor unter Workbook eintragen.
Beispiel:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim ws As Worksheet
    Set ws = Application.Worksheets("Tabelle1")  
    If ws.Cells(1, 1) = "" Then  
        MsgBox "Eventuell was Vergessen?"  
        Cancel = True
    End If
End Sub
Solange Zelle A1 leer ist, kannst Du nicht speichern.
Humpi88
Humpi88 20.10.2011 um 11:51:16 Uhr
Goto Top
Super danke

hat mir schon weitergeholfen
steini84
steini84 20.10.2011 um 12:23:01 Uhr
Goto Top
@AndreasHoster:

Hi,

mal ne Frage nebenbei:
Bietet das Dim - Set konstrukt irgendwelche Vorteile, evtl. performancetechn. oder ist das jetzt nur aus Prinzip?

In meinen einfachen VBA-Kenntnissen hätte ich einfach If Worksheets("Tabelle1") .Cells(1,1) benutzt.
In diesem Sub sind das ja quasi 2 Zeilen Overhead.

MfG Steini
AndreasHoster
AndreasHoster 20.10.2011 um 12:29:49 Uhr
Goto Top
Der einzige Vorteil ist, das Type Ahead bei Application.Worksheets(Tabelle1"). nicht funktioniert.
Wenn ich es einer Variablen zuweise, die den richtigen Typ hat, dann zeigt mir der VBA Editor nach ws. alle Methoden und Parameter an.

Also eher ein Workaround für einen Bug, als ein echter Vorteil. Zumindestens bei meinem Office 2003 ist das so.
Ansonsten würde ich auch die einzeilige Version vorziehen.
steini84
steini84 20.10.2011 um 12:35:51 Uhr
Goto Top
Ah ok danke.

Bei längerem Code spart man ja wieder damit Zeichen, denke ich.

Na gut - zurück zum Thema face-smile