Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Excel 2007 Zeile ausblenden wenn zwei Werte in Zelle gleich

Frage Microsoft Microsoft Office

Mitglied: tropus

tropus (Level 1) - Jetzt verbinden

06.10.2010, aktualisiert 22:03 Uhr, 6039 Aufrufe, 7 Kommentare

Hallo, ich suche schon seit Tagen nach einer Lösung in Excel eine Zelle auszublenden wenn zwei Spalten einen bestimmten Wert angezeigt wird.

Ich habe folgenden Code, der sich jedoch nur auf eine Spalte bezieht.
01.
Private Sub Worksheet_Change(ByVal Target As Range) 
02.
If Target.Column = 10 And 11 Then 
03.
    If Cells(Target.Row, 10 And 11) = "OK" Then 
04.
        Rows(Target.Row).EntireRow.Hidden = True 
05.
    End If 
06.
End If 
07.
End Sub
Ich möchte aber eine Zeile ausblenden, wenn in der Spalte 10+11 "OK" (oder in ähnlichen Schreibweisen, wie: ok+OK, etc.) steht.

Ferner soll danach msgbox für 3 sec. einen text anzeigen, und dann wieder verschwinden -ohne das es einer Bestätigung bedarf.
Den entsprechenden variablen Wert soll sich die box aus der Spalte 2, der auszublendenden Zeile (z.B. B14) holen.

Kann mir jemand helfen, ich bin auch für Teilantworten dankbar.

Viele Grüße (aus Brasilien)

Ralf
Mitglied: 76109
06.10.2010 um 18:18 Uhr
Hallo Ralf!

Versuchs mal damit:
01.
Option Explicit 
02.
Option Compare Text 
03.
 
04.
Const Wartezeit = 3 'Wartezeit in Sekunden 
05.
 
06.
Private Sub Worksheet_Change(ByVal Target As Range) 
07.
    With Target 
08.
        If .Column = 10 Or .Column = 11 Then 
09.
            If Cells(.Row, 10) Like "OK" And Cells(.Row, 11) Like "OK" Then 
10.
                Rows(.Row).EntireRow.Hidden = True 
11.
                CreateObject("WScript.Shell").Popup Cells(.Row, 2), Wartezeit, "Hinweis...", vbInformation 
12.
            End If 
13.
        End If 
14.
    End With 
15.
End Sub
Wobei es in Excel selbst keine Möglichkeit gibt eine Meldung automatisch schließen zu lassen. Von daher eine PopUp-Meldung über WSH-SHELL

Als Anzeigetext, wird der Wert aus Spalte B (2) genommen.

Der Like-Operator in Verbindung mit "Option Compare Text" unterscheidet im Gegensatz zum Operator "=" NICHT zwischen Klein/Großschreibung.

Grüße aus Germany

Dieter
Bitte warten ..
Mitglied: tropus
06.10.2010 um 19:29 Uhr
Hallo Hajo,

danke der Code klappt besser als meiner, leider noch nicht ganz perfekt.
Die Zeilen werden ausgeblendet, aber nur bei OK, OK in Großbuchstaben.
Das Hinweisfenster ist noch zu klein, außerdem soll es noch folgenden Text enthalten: Die Gruppe ...(Wert aus Spalte 2, der auszublendenden Zeile) wurde erfolgreich geschlossen.

Ich bastele weiter, aber vielleicht bist Du ja schneller als ich.

Viele Grüße

Ralf
Bitte warten ..
Mitglied: 76109
06.10.2010 um 19:48 Uhr
Hallo Ralf!

Zitat von tropus:
danke der Code klappt besser als meiner, leider noch nicht ganz perfekt.
Die Zeilen werden ausgeblendet, aber nur bei OK, OK in Großbuchstaben.
Hast Du den kompletten Quelltext inklusive Codezeile 1 und 2 kopiert?

Das Hinweisfenster ist noch zu klein, außerdem soll es noch folgenden Text enthalten: Die Gruppe ...(Wert aus Spalte 2, der
auszublendenden Zeile) wurde erfolgreich geschlossen.
01.
Option Explicit 
02.
 
03.
Const Wartezeit = 3 'Wartezeit in Sekunden 
04.
 
05.
Private Sub Worksheet_Change(ByVal Target As Range) 
06.
    Dim Msg As String 
07.
     
08.
    With Target 
09.
        If .Column = 10 Or .Column = 11 Then 
10.
            If UCase(Cells(.Row, 10)) = "OK" And UCase(Cells(.Row, 11)) = "OK" Then 
11.
                Rows(.Row).EntireRow.Hidden = True 
12.
                Msg = "Die Gruppe " & Cells(.Row, 2) & " wurde erfolgreich geschlossen!" 
13.
                CreateObject("WScript.Shell").Popup Msg, Wartezeit, "Hinweis...", vbInformation 
14.
            End If 
15.
        End If 
16.
    End With 
17.
End Sub
Gruß Dieter

[edit] geändert [/edit]
Bitte warten ..
Mitglied: tropus
06.10.2010 um 20:08 Uhr
Wie zum Teufel komme ich denn auf Hajo? - Eindeutig überarbeitet.

Ja Dieter, ich habe den kompletten Code kopiert - würde gerne die Datei anhängen, damit Du das Ding auch vor Augen hast.

Mit dem neuen Code bekomme ich eine Fehlermeldung. "Variable nicht definiert" - dazu wird mir "Msg" (aus Zeile 14) markiert.

Sorry für den Trouble

Ralf
Bitte warten ..
Mitglied: 76109
06.10.2010 um 20:32 Uhr
Hallo Ralf!

Zitat von tropus:
Wie zum Teufel komme ich denn auf Hajo? - Eindeutig überarbeitet.
Das habe ich mich auch gefragt
Mit dem neuen Code bekomme ich eine Fehlermeldung. "Variable nicht definiert" - dazu wird mir "Msg" (aus Zeile
14) markiert.
Das kann ich nicht ganz nachvollziehen, muss irgendwie an Deiner Excel-Version liegen.

Letzten Code geändert und hoffe, dass er jetzt funktioniert?

Gruß Dieter
Bitte warten ..
Mitglied: tropus
06.10.2010 um 21:57 Uhr
Hallo Dieter,

wollte Dich nicht im Unklaren lassen - das Problem ist, nicht zuletzt wegen Deiner guten Hilfe, gelöst.

Das Problem war, dass mir der Code etwa folgendermaßen angezeigt wurde:
01.
Option Explicit 
02.
Const Wartezeit = 3 'Wartezeit in Sekunden 
03.
 
04.
Private Sub Worksheet_Change(ByVal Target As Range) ...
Da ich davor bereits einen code hatte, habe ich "Option Explicit" gelöscht und "Const Wartezeit = 3 'Wartezeit in Sekunden" unterhalb von "Private Sub..." gesetzt - jetzt ist alles prima.

Danke noch mal

Viele Grüße

Ralf
Bitte warten ..
Mitglied: 76109
07.10.2010 um 08:59 Uhr
Hallo Ralf!

Zitat von tropus:
wollte Dich nicht im Unklaren lassen - das Problem ist, nicht zuletzt wegen Deiner guten Hilfe, gelöst.
Sowas in der Art hatte ich mir schon gedacht
Danke noch mal
Yepp, gern geschehen

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Microsoft Office
Excel 2007: Sortierung ohne ins Datenblatt zu springen (2)

Frage von JoSiBa zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel 2007 und der Cosinus (3)

Frage von Henere zum Thema Microsoft Office ...

Microsoft Office
Excel 2007 jedes Fenster in extra Instanz (7)

Frage von xbast1x zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...