Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1544to1548
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Löschen von Zellinhalten

Löschen von Zellinhalten
04.03.2017 04:54:36
Zellinhalten
Schönen guten Morgen,
ich krabbel mal wieder an einem Problem herum:
In Zelle A1 gebe ich einen Wert ein. Dieser Wert wird in Zelle C1 mit dem Wert in Zelle B1 verglichen. Wenn A1 größer als B1 ist, schreibt Excel per einfacher Wenn-Abfrage das Wort
"Reduzieren" (Ohne Anführungsstriche)
in Zelle C1 rein.
Ich hab folgendes Makro geschrieben:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("C1").Value = "Reduzieren"" Then Range("A1").Value = ""
End Sub

Dieses Makro löscht mir also die Zelle A1, wenn ich dort einen Wert eingegeben habe, der größer ist als der in Zelle B1 (Das Wort "Reduzieren" muss in Zelle C1 stehen, da führt kein Weg dran vorbei).
Meine Frage nun: Das Tabellenblatt hat ca. 1000 Zeilen. Wie schreibe ich das Makro um, damit es mir, sobald irgendwo in Spalte C das Wort "Reduzieren" auftaucht, der Wert in der zugehörigen Spalte A gelöscht wird?
Also:
ich gebe beispielsweise in A255 einen Wert ein, der größer ist als B255, folglich steht in C255 "Reduzieren". Das Makro soll dann den Wert in A255 löschen.
Hoffentlich war das einigermaßen verständlich?!
Ich freu mich auf Lösungen, denn ich komm nicht recht weiter, weil ich auch ein ziemlicher Newbie bin. Vielleicht gibt es sogar Lösungen, die die WENN-Abfrage in C1 überflüssig machen. Wie gesagt: Das Wort "Reduzieren" muss in Spalte C auftauchen, wenn A > B
Vielen DAnk schonmal im Voraus
und ein schönes Wochenende wünscht
Jochen

33
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Löschen von Zellinhalten
04.03.2017 05:03:02
Zellinhalten
Hab noch was vergessen:
Wenn nun der Wert in Spalte A kleiner oder gleich dem in Spalte B ist, so soll in Spalte C einfach "OK" stehen.
Das habe ich wie gesagt mit der einfach WENN-Abfrage erreicht.
Wenn da jedoch "Reduzieren" drin steht, dann hab ich per bedingter Formatierung die Zelle hellrot eingefärbt.
All das wäre super, wenn es per Makro gehen würde, und zwar für alle Zeilen des Blattes.
Eine Lösung, die mir "nur" die entsprechende Zelle in Spalte A löscht, wär aber auch super, denn die Abfrage und bedingte Formatierung funktionieren einwandfrei.
Mal sehen, was Euch so einfällt.
Nochmals schöne Grüße
Jochen
Anzeige
AW: Löschen von Zellinhalten
04.03.2017 05:25:14
Zellinhalten
Ich hab das Gefühl, ich hab mich bißchen verrannt. Klingt irgendwie unlogisch das Ganze.
Kurz zur Erläuterung: In Spalte A gibt der Benutzer eine Bestell-Menge ein, also z.B. 5 für 5 Karton.
In Spalte B steht von mir eingepflegt die maximal zulässige Bestell-Menge, also z.B. 4 für 4 Kartons.
Vielleicht kann ich mir die Spalte C auch sparen, wenn das Makro A und B vergleicht und für den Fall, dass A größer B ist, eine kleine Message-Box aufgeht, in der z.B. steht: "Maximale Bestellmenge überschritten, auf 0 zurückgesetzt".
Das wäre glaub ich viel eleganter und auch logischer.
Hat hierzu jemand eine Idee, auch für 1000 Zeilen pro Blatt?
Ich nerv auch nicht länger und wünsch einen guten Tag!
Jochen
Anzeige
AW: Datengültigkeit
04.03.2017 07:47:47
Gerd
Hallo Jochen!
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zell As Range
If Not Intersect(Range("A2:A1000"), Target) Is Nothing Then Exit Sub
For Each Zell In Intersect(Range("A2:A1000"), Target)
If Zell > Zell.Offset(0, 1) Then
Application.EnableEvents = False
Zell = Zell.Offset(0, 1)
MsgBox "Bestellmenge in " & Zell.Address & " ist auf Maximum reduziert "
Application.EnableEvents = True
End If
Next
End Sub
Gruß Gerd
AW: Datengültigkeit
04.03.2017 14:08:07
Jochen
Hallo Gerd,
vielen Dank für deine Nachricht mit dem Makro.
Das klappt leider nicht:
Sobald ich in Zelle B1 den Maximalwert vorgebe (was ja in der Realität auch so sein würde), dann steigt der Debugger ein und moniert die Zeile
For Each Zell In Intersect(Range("A2:A1000"), Target)
Auch wenn ich in die Zelle B1 was eingebe, dann moniert er die Zeile
For Each Zell In Intersect(Range("A2:A1000"), Target)
Ich hab mal probiert, A2 gegen A1 auszutauschen. Auch hier ändert sich nichts.
Leider weiss ich nun absolut nicht, woran das liegen kann.
Ich schick die Datei einfach mal hoch:
Spalte B sind vorgegebene von mir händisch eingetragene Werte
Spalte A sind die vom Benutzer auszufüllenden Bestellmengen.
Vielleicht hast ja ne Idee oder kannst das Makro lauffähig machen? Oder bin ich zu doof?
Merci einstweilen!
Jochen
Anzeige
AW: Löschen von Zellinhalten
04.03.2017 15:28:56
Zellinhalten
Hallo Jochen,
stell doch mal eine Beispieldatei ein.
Servus
AW: Löschen von Zellinhalten
04.03.2017 16:10:51
Zellinhalten
Hallo Herbert.
hier der Link: https://www.herber.de/bbs/user/111948.xlsm
Kurz zusammengefasst:
Habe jetzt mal Überschriften eingefügt. Vielleicht wird es dadurch deutlicher.
Die Werte in der Spalte B sind vorgegeben (maximale Bestellmenge)
Der Benutzer trägt die Bestell-Menge in Spalte A ein (gewünschte Bestellmenge).
Wenn also nun z.B. A655 größer als B655, dann muss A655 den Wert von B655 übernehmen (als Maximal zulässige Bestellmenge).
Zusätzlich soll ne Message-Box aufklappen, die den Benutzer informiert, dass der Wert in A655 auf B655 gesetzt wurde, da A655 die maximale Bestellmenge in B655 überschritten hat.
Das Makro muss alles überwachen, bis hin zur Zeile 1000.
Irgend eine Idee?
Gruß Jochen
Anzeige
AW: Löschen von Zellinhalten
04.03.2017 16:28:24
Zellinhalten
Hallo Jochen,
probiers mal damit:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column  1 Then Exit Sub
If Cells(Target.Row, Target.Column).Value > Cells(Target.Row, Target.Column + 1).Value Then
Application.EnableEvents = False
Target.Value = Cells(Target.Row, Target.Column + 1).Value
Application.EnableEvents = True
End If
End Sub
Servus
AW: Löschen von Zellinhalten
04.03.2017 16:56:23
Zellinhalten
Hallo Herbert,
sorry, hab die richtige Spaltenverteilung vergessen. Unter dem Link hab ich die Datei mit der richtigen Verteilung hochgeladen:
https://www.herber.de/bbs/user/111949.xlsm
Es geht hier um die Spalten B (Eingabe der gewünschten Bestellmenge) und E (vorgegebene maximale Bestellmenge).
Schau es Dir doch nochmal an und pass das Makro vielleicht entsprechend an. Wäre super. Hast Du die Message Box eingeplant, falls der Wert in B angepasst werden muss, weil er größer als E ist?
Ich komm wohl erst morgen zum Testen, hab Dienst.
Schönen Abend
Jochen
Anzeige
AW: Löschen von Zellinhalten
04.03.2017 16:58:38
Zellinhalten
Hallo Jochen,
schau Dir doch mal meinen Code an und versuche, ob Du das nicht hin bekommst. Experimentiere mal ein wenig damit, mach Dir aber vorher eine Sicherungskopie. Wenns nicht klappt, dann melde Dich noch mal.
Servus
AW: Löschen von Zellinhalten
05.03.2017 01:13:22
Zellinhalten
Hallo Herbert,
hab schon bißchen getestet. Klappt alles super, auch die MessageBox hab ich ohne Probleme hinbekommen.
Ein kleines Problem bleibt noch:
Gibt es irgendeine Möglichkeit, die Zeilen unterhalb der letzten beschriebenen Zeile, auszublenden? Angenommen, ich habe 5 Artikel in der Tabelle stehen. Nach dem 5. Artikel kommt nichts mehr. Diese Zeilen möchte ich komplett bis gaaaanz nach unten ausgegraut sind.
Ich möchte gerne, dass wirklich nur die beschriebenen Zeilen zu sehen sind.
Gruß
Jochen
Anzeige
AW: Löschen von Zellinhalten
05.03.2017 01:18:43
Zellinhalten
Und meine letzte Frage:
Gibt es irgendeine Möglichkeit, einen Hyperlink zu einer lokal gespeicherten Datei so zu gestalten, dass er auch in einer gesperrten Zelle aktiv ist?
Direkt durch Anklicken oder vielleicht auch als Druckknopf (Command Button)
Gruß
Jochen
AW: Löschen von Zellinhalten
05.03.2017 10:26:38
Zellinhalten
Hallo Jochen,
dazu brauche ich Deine überarbeitete Datei.
Servus
AW: Löschen von Zellinhalten
05.03.2017 15:27:38
Zellinhalten
Hallo Herbert,
die Sache mit dem Hyperlink hab ich hinbekommen (der Hyperlink ist jetzt als Command Button gemacht). Wie gesagt: Dein Code funktioniert wunderbar, auch die Anpassung war kein Thema.
Bleibt noch die Sache mit dem Ausgrauen. Ich denke, ich mach das händisch. Es geht eben drum, alle Zellen, die nicht beschrieben sind bzw. werden, die also leer sind, grau zu hinterlegen.
Da jedes Tabellenblatt eine fixe Anzahl von Zeilen und Spalten hat und sich daran nichts ändert, dürfte das händisch kein Problem sein. Es sei, Du weißt einen Trick via VBA?!!?
Ich hatte mal eine kleine Beispieldatei hochgeladen. Nehmen wir an, es sind 5 Zeilen und 5 Spalten in der Tabelle, da ist es doch einfach, den Rest grau zu hinterlegen, oder?
Ich wünsch Dir nen schönen Tag und vielen Dank für Deine Mühen!
Jochen
P.S.: Falls Du doch noch ne VBA-Idee hast - immer her damit
Anzeige
AW: Löschen von Zellinhalten
05.03.2017 18:00:48
Zellinhalten
Hallo Jochen,
"Bleibt noch die Sache mit dem Ausgrauen. Ich denke, ich mach das händisch. Es geht eben drum, alle Zellen, die nicht beschrieben sind bzw. werden, die also leer sind, grau zu hinterlegen."
Ich habe das schon seit Stunden fertig. Aber wenn Du nicht tust, worum ich Dich bitte, musst Du halt darauf verzichten!
Servus
AW: Löschen von Zellinhalten
05.03.2017 20:36:25
Zellinhalten
Ups, sorry Herbert.
Ich dachte, Du bräuchtest die Datei für die Sache mit dem Hyperlink.
Sorry, war ein Missverständnis.
Mit dem Ausgrauen müsste ich dir die gesamte Datei samt Passwörtern und privaten Adressen schicken samt Passwörtern und Betriebsinterna. Ob da mein Arbeitgeber mit einverstanden wäre?
Vielleicht kannst mir Dein Ergebnis trotzdem schicken?
Wenn nicht bedanke ich mich herzlich für Deine kompetenten Lösungen!
Schöne Grüße
Jochen
Anzeige
AW: Löschen von Zellinhalten
06.03.2017 08:26:21
Zellinhalten
Hallo Jochen,
Die Makros im VBA-Editor in "DieseArbeitsmappe", in die "Tabelle1" und im "Modul1" musst Du in Deine AM übertragen, dann funzt es auch mit dem "ausblenden der Zeilen unterhalb des letzten Eintrages"!
https://www.herber.de/bbs/user/111960.xlsm
Servus
AW: Löschen von Zellinhalten
07.03.2017 09:08:24
Zellinhalten
Hallo Jochen,
hast Du meinen Vorschlag schon ausprobiert?
Servus
AW: Löschen von Zellinhalten
07.03.2017 14:21:24
Zellinhalten
Hallo Herbert,
Dankeschön für das Ausarbeiten der Datei.
Leider klappt das nicht:
- Shift - Alt - F10 klappt nicht. Ich habe immer nur die Zellen sichtbar wie beim Start der Datei. Ob die Zeilen, die ausgeblendet sind, beim Schließen wieder sichtbar werden, kann ich nicht beurteilen, das geht zu schnell.
- Worksheet_Change im VBA-Editor muss ich löschen, sonst kommen immer wieder Fehlermeldungen.
Wie gesagt: Die Hyperlink-Sache klappt nicht mit gesperrten Zellen, weil ich die Zellen, in die der Hyperlink rein soll, per VBA gesperrt hab. Macht nichts, geht auch sehr gut mit Command-Button und passt sehr gut zu den anderen Buttons, die ich gebastelt habe.
Anzeige
AW: Löschen von Zellinhalten
07.03.2017 14:43:02
Zellinhalten
Hallo Herbert,
habe gerade festgestellt, dass Shift - Alt - F10 nichtmal in der Datei funktioniert, die Du hochgeladen hast.
Woran kann das liegen?
Bin ratlos.
Schöne Grüße
Jochen
AW: Löschen von Zellinhalten
07.03.2017 17:44:39
Zellinhalten
Hallo Jochen,
bitte verzeih mir, doch ich Vollpfosten habe UMSCHALT + ALT geschrieben, aber gemeint habe ich UMSCHALT + STRG!!! Das tut mir sehr leid!
Aber der Hyperlink MUSS funktionieren, denn ich habe es bei mir ausprobiert! Ich habe das AB mit Passwort gesperrt und beim Sperren im PopUp-Fenster bei "Hyperlinks einfügen" einen Haken gesetzt. Dann hat es geklappt.
Wie sperrst Du Zellen per VBA?
Servus
AW: Löschen von Zellinhalten
07.03.2017 20:38:04
Zellinhalten
Hallo Herbert,
alles kein Problem. Dann nehm ich halt UMSCHALT + STRG und F10.
Ich komm die Tage wahrscheinlich eher selten zum Austesten, da ich erstmal die neuen Geschichten, die ich mittlerweile habe, einpflegen muss. Arbeiten muss auch noch irgendwann mal sein :-)
Bezüglich des Sperrens der Zellen:
zuerst mach ich alles zu mit
.Cells.Locked = True
Dann wähl ich die Zellen, die ich separat behandelt haben möchte, aus mit diversen Prozeduren, wie z.B,:
.Range("A:E").Locked = False
.Range("1:" & letzteZeile).Locked = True
.Range("B:B").Locked = False
.Range("B1:B3").Locked = True
Nur kleine Beispiele sind das, sind noch viel mehr.
Aber ich bin sehr zufrieden mit dem Hyperlink als CommandButton. Den kann ich hinschieben wo ich will, es klappt immer.
Ich möchte Dich also noch um etwas Geduld bitten, bis ich antworte. Sieht jedenfalls vielversprechend aus, wenn das dann so klappt, wie Du geschrieben hast. Gibt's denn auch ne Möglichkeit, die Zellen rechts von der letzten benutzten Spalte, genauso auszublenden und zu blockieren, so dass ich nur noch die Tabelle selber habe, alles andere aber ausgegraut ist? Wahrscheinlich geht das ähnlich. Vielleicht kann man das auch mit UMSCHALT + STRG und F10 sichtbar machen und dann auch wieder wegnehmen. Wär super, wenn Du Dir darüber nochmal Gedanken machen könntest. Aber wie gesagt: Es hat eh Zeit bis Wochenende.
Ich melde mich dann wieder, spätestens am Wochenende.
Schöne Grüße und Merci vielmals!
Jochen
AW: Löschen von Zellinhalten
08.03.2017 02:35:19
Zellinhalten
Hallo Herbert,
jetzt bin ich doch dazu gekommen, bißchen rumzuprobieren.
Irgendwie klemmt da aber was, was vielleicht damit zu tun hat, dass meine AM folgendermaßen aussieht:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If ActiveSheet.Range("A1").Value  "Sicher" Then
MsgBox "Zum Beenden benutzen Sie bitte ausschließlich den 'Beenden'-Button"
Cancel = True
Else
ActiveSheet.Range("A1").Value = ""
ActiveSheet.Protect (Passwort)
ThisWorkbook.Saved = True
End If
End Sub

Private Sub Workbook_Open()
With UserForm1
'Start-Formular formatieren
.StartUpPosition = 1
.Height = Application.Height / 1
.Width = Application.Width / 1
.ComboBox1.Left = (.Width - .ComboBox1.Width) / 2 + (.ComboBox1.Width) - Application. _
CentimetersToPoints(3)
.ComboBox1.Top = Application.CentimetersToPoints(10)
.ComboBox2.Left = (.Width - .ComboBox2.Width) / 2 + (.ComboBox2.Width) - Application. _
CentimetersToPoints(3)
.ComboBox2.Top = Application.CentimetersToPoints(13)
.ComboBox2.Visible = False
.CommandButton1.Top = Application.CentimetersToPoints(14)
.CommandButton1.Left = (.Width - .CommandButton1.Width) / 2
.btnBeenden.Top = Application.CentimetersToPoints(14)
.btnBeenden.Left = (.Width + .btnBeenden.Width) / 2 + Application.CentimetersToPoints(3) _
.Image1.Left = (.Width - .Image1.Width) / 2
.Image1.Top = Application.CentimetersToPoints(1)
.Label1.Left = (.Width - .Label1.Width) / 2
.Label1.Top = Application.CentimetersToPoints(7)
.Label2.Left = (.Width - .Label2.Width) / 2 - (.Label2.Width) + Application. _
CentimetersToPoints(4)
.Label2.Top = Application.CentimetersToPoints(10)
.Label3.Left = (.Width - .Label3.Width) / 2 - (.Label3.Width) + Application. _
CentimetersToPoints(3)
.Label3.Top = Application.CentimetersToPoints(13)
.Label3.Visible = False
.Label4.Left = Application.CentimetersToPoints(1)
.Label4.Top = .Height - 18 - .Label4.Height - Application.CentimetersToPoints(1)
.Show
End With
End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
frmPasswort.Show
If PW  PasswortA Then
MsgBox "Sie sind nicht befugt, Änderungen abzuspeichern" & _
vbLf & "Ihre Änderungen werden nicht gesichert!", _
vbExclamation
PW = ""
Cancel = True
Application.DisplayAlerts = False
End If
End Sub

Wo soll ich da jetzt Deinen Code einfügen? Und wie verhindere ich eine Doppelung der Namen der Private Sub's?
Und der 2. Teil Deiner Lösung - den kopier ich wohl in ein neues Modul?
Muss bei jedem der insgesamt 125 Tabellenblätter bei mir Option explicit oben stehen? Bisher klappt alles bestens ohne.
Der eigentliche Aufruf des jeweiligen Tabellenblattes geschieht bei mir beim Schließen einer UserForm. Hier hab ich auch die Sperrung der Zellen eingebaut, wie ich Dir gestern Abend geschrieben habe. Passt hier der Code Ausblenden der nicht benutzten Zeilen nicht besser hinein?
Der entsprechende Code des Seitenaufrufes lautet:
Sub sbBlattEinblenden(sBlattname$)
Dim blatt As Worksheet
Dim zelle As Range
Dim letzteZeile As Long
'Abteilungsblatt einblenden
With ThisWorkbook.Worksheets(sBlattname)
.Visible = True
'Schutz temporär aufheben
.Unprotect (Passwort)
.UsedRange.UnMerge
'geschützten Bereich festlegen
letzteZeile = .Range("A3").End(xlDown).Row
.Cells.Locked = True
.Range("A:E").Locked = False
.Range("1:" & letzteZeile).Locked = True
.Range("B:B").Locked = False
.Range("B1:B3").Locked = True
'Blatt schützen
.Protect (Passwort)
End With
'restliche Blätte ausblenden
For Each blatt In ThisWorkbook.Worksheets
If blatt.Name sBlattname Then
blatt.Visible = False
blatt.Protect (Passwort)
End If
Next blatt
End Sub
Fragen über Fragen. Jedenfalls kann ich Deinen Code nicht 1:1 kopieren, da müssen glaub ich noch einige Änderungen rein, die ich aber derzeit nicht sehe. Kannst mir auf die Sprünge helfen oder vielleicht Deinen Code in meinen mitreinbasteln und mir dann zuschicken? Wäre super.
Schöne Grüße
Jochen
AW: Löschen von Zellinhalten
08.03.2017 08:47:22
Zellinhalten
Hallo Jochen,
übertrage die VBA-Codes aus der beigef. Datei genau so in Deine AM im VBA-Editor in "DieseArbeitsmappe", "Tabelle1(Tabelle1)" und in das "Modul1" etc. Schau Dir auch meine Info in der Tabelle2 an.
https://www.herber.de/bbs/user/112022.xlsm
Servus
AW: Löschen von Zellinhalten
08.03.2017 13:58:30
Zellinhalten
Hallo Herbert,.
klappt nicht.
Da wird nichts ausgeblendet und ausgegraut,
und auch SHIF - STRG - F10 bringt nur ne Fehlermeldung, die lautet: Laufzeitfehler '1004': Die Hidden-Eigentschaft des Range-Objektes kann nicht festgelegt werden.
Geh ich dann auf Debuggen, moniert er die Zeile
Cells.EntireRow.Hidden = False
im Modul 2, in das ich Deinen Code kopiert hab.
Geht einfach nicht, kein Ausblenden, kein Ein- oder Ausblenden, nichts.
Naja vielleicht hast ja noch ne Idee?
Ich füg Dir einfach mal meine nach Deinen Anweisungen geänderten Codes an:
Arbeitsmappe - Tabelle 1:
Option Explicit
Private Sub Worksheet_Activate()
Dim iLastRow%
On Error GoTo ende
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
Rows(iLastRow & ":1048576").EntireRow.Hidden = True
ende:
End Sub

Private Sub CommandButton1_Click()
Call SearchAllTables
End Sub

Private Sub CommandButton2_Click()
Call Ausdrucken
End Sub

Private Sub CommandButton3_Click()
Call Beenden
End Sub
Private Sub CommandButton4_Click()
ActiveWorkbook.FollowHyperlink "C:\Sonderanforderung Lager.pdf", NewWindow:=True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column  2 Then Exit Sub
If Cells(Target.Row, Target.Column).Value > Cells(Target.Row, Target.Column + 3).Value  _
Then
Application.EnableEvents = False
Target.Value = Cells(Target.Row, Target.Column + 3).Value
MsgBox "Höchstbestellmenge überschritten - Auf maximale Anzahl reduziert"
Application.EnableEvents = True
End If
End Sub
Diese Arbeitsmappe:
'Option Explicit
Private Sub Workbook_Open()
Application.OnKey "+^{F10}", "ZeilenEinblenden"
With UserForm1
'Start-Formular formatieren
.StartUpPosition = 1
.Height = Application.Height / 1
.Width = Application.Width / 1
.ComboBox1.Left = (.Width - .ComboBox1.Width) / 2 + (.ComboBox1.Width) - Application. _
CentimetersToPoints(3)
.ComboBox1.Top = Application.CentimetersToPoints(10)
.ComboBox2.Left = (.Width - .ComboBox2.Width) / 2 + (.ComboBox2.Width) - Application.  _
_
CentimetersToPoints(3)
.ComboBox2.Top = Application.CentimetersToPoints(13)
.ComboBox2.Visible = False
.CommandButton1.Top = Application.CentimetersToPoints(14)
.CommandButton1.Left = (.Width - .CommandButton1.Width) / 2
.btnBeenden.Top = Application.CentimetersToPoints(14)
.btnBeenden.Left = (.Width + .btnBeenden.Width) / 2 + Application.CentimetersToPoints( _
3) _
.Image1.Left = (.Width - .Image1.Width) / 2
.Image1.Top = Application.CentimetersToPoints(1)
.Label1.Left = (.Width - .Label1.Width) / 2
.Label1.Top = Application.CentimetersToPoints(7)
.Label2.Left = (.Width - .Label2.Width) / 2 - (.Label2.Width) + Application. _
CentimetersToPoints(4)
.Label2.Top = Application.CentimetersToPoints(10)
.Label3.Left = (.Width - .Label3.Width) / 2 - (.Label3.Width) + Application. _
CentimetersToPoints(3)
.Label3.Top = Application.CentimetersToPoints(13)
.Label3.Visible = False
.Label4.Left = Application.CentimetersToPoints(1)
.Label4.Top = .Height - 18 - .Label4.Height - Application.CentimetersToPoints(1)
.Show
End With
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Environ("USERNAME") = "1HG" Then Exit Sub
Application.OnKey "+^{F10}"
If ActiveSheet.Range("A1").Value  "Sicher" Then
MsgBox "Zum Beenden benutzen Sie bitte ausschließlich den 'Beenden'-Button"
Cancel = True
Else
ActiveSheet.Range("A1").Value = ""
ActiveSheet.Protect (Passwort)
ThisWorkbook.Saved = True
End If
End Sub
Private Sub Workbook_Activate()
Application.OnKey "+^{F10}", "ZeilenEinblenden"
End Sub

Private Sub Workbook_Deactivate()
Application.OnKey "+^{F10}"
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Environ("USERNAME") = "1HG" Then Exit Sub
frmPasswort.Show
If PW  PasswortA Then
MsgBox "Sie sind nicht befugt, Änderungen abzuspeichern" & _
vbLf & "Ihre Änderungen werden nicht gesichert!", _
vbExclamation
PW = ""
Cancel = True
Application.DisplayAlerts = False
End If
End Sub

Modul 2:
Option Explicit
Sub ZeilenAusblenden()
Dim iLastRow%
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
Rows(iLastRow & ":1048576").EntireRow.Hidden = True
End Sub Sub ZeilenEinblenden()
Cells.EntireRow.Hidden = False
End Sub Vielleicht hilft das weiter.
Schöne Grüße
Jochen
AW: Löschen von Zellinhalten
08.03.2017 16:06:57
Zellinhalten
Hallo Jochen,
es könnte noch daran liegen, dass die Tabelle1 gesperrt ist. Mach deshalb noch mal folgende Ergänzungen:
In "Tabelle1(Tabelle1)":
Private Sub Worksheet_Activate()
Dim iLastRow%
On Error GoTo ende
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
ActiveSheet.Unprotect (Passwort)
Rows(iLastRow & ":1048576").EntireRow.Hidden = True
ActiveSheet.Protect (Passwort)
ende:
End Sub

In "Modul2":
Sub ZeilenEinblenden()
ActiveSheet.Unprotect (Passwort)
Cells.EntireRow.Hidden = False
ActiveSheet.Protect (Passwort)
End Sub
"Passwort" musst Du natürlich mit Deinem Passwort ersetzen!
Servus
AW: Löschen von Zellinhalten
08.03.2017 16:54:53
Zellinhalten
Hallo Herbert,
auch das klappt nicht.
Was hältst Du davon: Ich hab die Datei desensibilisiert: Namen sind alle draußen, Adressen und Telefonnummern ebenso.
Ich könnt Dir, falls Du Interesse hast, das Teil per Mail samt zugehörigen Passwörtern schicken. Wie ich das sehe, könnte das hier im Forum noch Jahre dauern.
Schreib mal kurz, dann kann ich Dir das zuschicken, wenn du magst.
Schöne Grüße
Jochen
AW: Löschen von Zellinhalten
08.03.2017 16:56:13
Zellinhalten
Hallo Jochen,
meine eMail-Adr. findest Du hier bei den "Profilen".
Servus
AW: Löschen von Zellinhalten
09.03.2017 05:12:05
Zellinhalten
Hallo Herbert,
By the Way:
Was hat es mit
If Environ("USERNAME") = "1HG" Then Exit Sub
auf sich?
Gruß
Jochen
AW: Löschen von Zellinhalten
10.03.2017 15:39:22
Zellinhalten
Hallo Jochen,
diese Zeilen kannst Du löschen.
Servus
AW: Löschen von Zellinhalten
10.03.2017 16:03:20
Zellinhalten
Ok, Herbert.
Kommst denn klar mit meiner DAtei?
Gruß
Jochen
AW: Löschen von Zellinhalten
10.03.2017 16:06:48
Zellinhalten
Ich habe keine Datei von Dir erhalten. Prüfe mal, ob Du die eMail-Adr richtig geschrieben hast.
AW: Löschen von Zellinhalten
10.03.2017 16:47:29
Zellinhalten
hagrom@gmail.com
oder
mail@herbertgrom.de?
Hast zwei Adressen im Forum unter 2 Profilen. Ich schick nochmal an die erste.
Gruß
Jochen
AW: Die erste! owt
10.03.2017 16:48:19
Herbert
,,

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige