Supportnet / Forum / Tabellenkalkulation
Zelleninhalt wiederherstellen
Frage
hallo,
ich habe ein problem, kann mir vllt jemand helfen.
i habe einige zelleninhalte per makro gelöscht und möchte dieser aber wieder anzeigen lassen. also zum beispiel
ich habe irgenwo 2 eingegeben, dann löscht mein makro den bereich B4:Z4:
wenn ich irgendwo 4 eingebe, soll der bereich E4:Z4 gelöscht werden aber B4:E4 wieder angeezeigt werden so wie es zuvor war. also quasi den gelöschten zelleninhalt bzw formatierungsinhalt wieder anzeigen
danke
Antwort 1 von Marie
Dann darfst Du den Inhalt nicht löschen, dann musst Du ihn ausblenden, unsichtbar machen. Wenn er gelöscht ist ist er weg.
Kannst aber auch das gesamte Tabellenblatt irgendwo als Kopie hinterlegen und dann dort den Inhalt wieder zurückholen.
Gruß Marie
Kannst aber auch das gesamte Tabellenblatt irgendwo als Kopie hinterlegen und dann dort den Inhalt wieder zurückholen.
Gruß Marie
Antwort 2 von hansel_H
hallo
dank für die schnelle antwort.
geht das ausblenden von formatierungen überhaupt? bisher habe ich "ClearContents" und "ClearFormats" verwendet.
wie würde dann der Rückholvorgang des ausgeblendeten funktionieren? und wie funktioniert das Ausblenden per Makro?
gruß
hansel
dank für die schnelle antwort.
geht das ausblenden von formatierungen überhaupt? bisher habe ich "ClearContents" und "ClearFormats" verwendet.
wie würde dann der Rückholvorgang des ausgeblendeten funktionieren? und wie funktioniert das Ausblenden per Makro?
gruß
hansel
Antwort 3 von aiuto
Hi Hansel,
Würde es event. ausreichen die Schriftfarbe = Hintergrundfarbe zu setzen?
Etwa nach folgendem Schema:
Damit wären die Inhalte Unsichtbar.
mfg
vom Helfer
Würde es event. ausreichen die Schriftfarbe = Hintergrundfarbe zu setzen?
Etwa nach folgendem Schema:
Private Sub CommandButton1_Click()
If Range("B4:E4").Font.Color <> Range("B4:E4").Interior.Color Then
Range("B4:E4").Font.Color = Range("B4:E4").Interior.Color
Else
Range("B4:E4").Font.ColorIndex = xlAutomatic
End If
End SubDamit wären die Inhalte Unsichtbar.
mfg
vom Helfer
Antwort 4 von hansel_H
hallo,
danke für deine antwort, das ist zwar nicht das was ich suche aber es würde theoretisch genügen, nur wenn ich dieses makro 2 mal laufen lasse dann werden die zuvor ausgeblendeten zellen wieder eingeblendet das soll nicht geschehen denn dieses makro würde bei mir dann irgendwo in einer select case verzweigung auftreten.
also zum verständnis, dein makro blendet die inhalte der zellen b4:e4 aus?
kann man das auch so modifizieren dass "oben" in der f(x) zeile nicht mehr die werte stehen, aber das wäre ja löschen oder?
MfG
hansel
danke für deine antwort, das ist zwar nicht das was ich suche aber es würde theoretisch genügen, nur wenn ich dieses makro 2 mal laufen lasse dann werden die zuvor ausgeblendeten zellen wieder eingeblendet das soll nicht geschehen denn dieses makro würde bei mir dann irgendwo in einer select case verzweigung auftreten.
also zum verständnis, dein makro blendet die inhalte der zellen b4:e4 aus?
kann man das auch so modifizieren dass "oben" in der f(x) zeile nicht mehr die werte stehen, aber das wäre ja löschen oder?
MfG
hansel
Antwort 5 von hansel_H
hallo,
noch etwas anderes:
ich hab malö in der excel-VBA hilfe rum geschaut und die HIDDEN-Eigenschaft gefunden, mit der kann man etwas ausblenden, aber irgendwie nur ganze zeilen bzw spalten. kann man damit nicht einzelne zellen ausblenden bzw einblende?
gruß
hansel
noch etwas anderes:
ich hab malö in der excel-VBA hilfe rum geschaut und die HIDDEN-Eigenschaft gefunden, mit der kann man etwas ausblenden, aber irgendwie nur ganze zeilen bzw spalten. kann man damit nicht einzelne zellen ausblenden bzw einblende?
gruß
hansel
Antwort 6 von hansel_H
hallo aiuto,
dein vorschlag aus AW3 funktioniert doch nicht so oder so ähnlich wie ich gedacht hätte, da nur die zelleninhalte ausgeblendet werden, aber nicht die formatierungen(Rand,Zentrierung usw).
das wollt ich dir nur zuf info sagen
gruß
hansel
dein vorschlag aus AW3 funktioniert doch nicht so oder so ähnlich wie ich gedacht hätte, da nur die zelleninhalte ausgeblendet werden, aber nicht die formatierungen(Rand,Zentrierung usw).
das wollt ich dir nur zuf info sagen
gruß
hansel
Antwort 7 von aiuto
Zitat:
nur wenn ich dieses makro 2 mal laufen lasse dann
nur wenn ich dieses makro 2 mal laufen lasse dann
..Wollte damit auch nur demonstrieren, wie Du die Farben wieder zurücksetzen kannst.
Also:
Range("B4:E4").Font.Color = Range("B4:E4").Interior.Color
setzt die Schrftfarbe im Bereich[B4:E4] auf die Hintergrundfarbe (unsichtbar) und
Range("B4:E4").Font.ColorIndex = xlAutomatic
stellt die Schriftfarbe zurück [sichtbar]auf default.
Wenn das nicht genügt, mußt Du wie @Marie schon erwähnte die Bereichs-Inhalte ausschneiden auf einem anderen Tabellenblatt, oder in enem statischen Array speichern, und von dort bei Bedarf zurückholen.
Zitat:
kann man das auch so modifizieren dass "oben" in der f(x) zeile nicht mehr die werte stehen, aber das wäre ja löschen oder?
kann man das auch so modifizieren dass "oben" in der f(x) zeile nicht mehr die werte stehen, aber das wäre ja löschen oder?
Wohl wahr.
Aber welchen Zweck verfolgst Du denn genau? Vielleicht gibts elegantere Lösungen für Dein Anliegen.
mfg
vom Helfer
Antwort 8 von hansel_H
hallo,
also meine Situation ist folgende:
ich habe eine Excel Tabelle angelegt bestehend aus 20 teilen.
der anwender soll dann eine zahl zwischen 1 und 10 eingeben.
gibt er 1 ein sollen alle teile ausser die ersten 2 ausgblendet werden, gibt er 2 ein sollen die ersten 4 teile nicht ausgeblendet werden, gibt er 3 ein sollen die ersten 6 teile ausgeblendet werden, ... , gibt er 10 ein soll nichts ausgeblendet werden
gibt er aber zB erst 2 ein und dann 6, dann soll der teil auch wieder eingeblendet werden also die ersten 12 teile.
Bem:
die genauen zellenangaben schreibe ich jetzt nicht hin, fals du diese bräuchtest dann sags bitte.
Also vllt hilft das, vielen dank schon mal
MfG
hansel
also meine Situation ist folgende:
ich habe eine Excel Tabelle angelegt bestehend aus 20 teilen.
der anwender soll dann eine zahl zwischen 1 und 10 eingeben.
gibt er 1 ein sollen alle teile ausser die ersten 2 ausgblendet werden, gibt er 2 ein sollen die ersten 4 teile nicht ausgeblendet werden, gibt er 3 ein sollen die ersten 6 teile ausgeblendet werden, ... , gibt er 10 ein soll nichts ausgeblendet werden
gibt er aber zB erst 2 ein und dann 6, dann soll der teil auch wieder eingeblendet werden also die ersten 12 teile.
Bem:
die genauen zellenangaben schreibe ich jetzt nicht hin, fals du diese bräuchtest dann sags bitte.
Also vllt hilft das, vielen dank schon mal
MfG
hansel
Antwort 9 von aiuto
Nachgefragt:
Sollen (könnten) etwa die kompletten Spalten ausgeblendet werden?
Das würde es Vereinfachen.
mfg
vom Helfer
Sollen (könnten) etwa die kompletten Spalten ausgeblendet werden?
Das würde es Vereinfachen.
mfg
vom Helfer
Antwort 10 von aiuto
Deine Aussagen sind leider etwas widersprüchlich.
Ich hab das 'mal so interpretiert:
Die Anwender-Eingabe erfolgt in Zelle [B2]
mfg
vom Helfer
Zitat:
gibt er 3 ein sollen die ersten 6 teile ausgeblendet werden
und[/]
gibt er aber zB erst 2 ein und dann 6, dann soll der teil auch wieder eingeblendet werden also die ersten 12 teile.
gibt er 3 ein sollen die ersten 6 teile ausgeblendet werden
und[/]
gibt er aber zB erst 2 ein und dann 6, dann soll der teil auch wieder eingeblendet werden also die ersten 12 teile.
Ich hab das 'mal so interpretiert:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$B$2" Then Exit Sub
Dim wert%
If Not IsNumeric(Target.Value) Then
MsgBox ("falsche Eingabe: " & Target)
Range("B2").Select
Exit Sub
End If
wert = Target.Value
ActiveSheet.Columns(Chr(65 + 2) & ":T").Hidden = False
Select Case wert
Case 1 To 9
ActiveSheet.Columns(Chr(65 + wert * 2) & ":T").Hidden = True
End Select
End SubDie Anwender-Eingabe erfolgt in Zelle [B2]
mfg
vom Helfer
Antwort 11 von hansel_H
hallo aiuto,
also erst mal vielen dank für deine bemühung.
dein vorschlag aus AW10 funktioniert bei mir nicht, das makro kann nicht gestartet werden(ich glaube der Prozedurname soll anders sein?) es kommt aber kein laufzeitfehler.
zu deiner Frage wegen dem, dass komplette spalten ausgebledet werden sollen bzw können:
Das ist leider nicht so, da in dem gesamten Tabellenblatt auch noch andere angaben stehen, die mit dem hier nichts zu tun haben, und ersichtlich bleiben soll.
OHHH... entschuldigung bitte, das hab ich falsch hingeschieben:
gibt er 3 ein sollen die ersten 6 teile ausgeblendet werden
soll natürlich heißen:
gibt er 3 ein sollen die ersten 6 teile eingeblendet werden
ist es so verständlich?
genaure Beschreibung:
Eingabe:
1 dann: ausblenden: H9:M20 & A23:M76
2 dann: ausblenden: A23:M76
3 dann: ausblenden: H23:M34 & A37:M76
4 dann: ausblenden: A37:M76
5 dann: ausblenden: H37:M48 & A51:M76
6 dann: ausblenden: A51:M76
7 dann: ausblenden: H51:M62 & A65:M76
8 dann: ausbelden: A55:M76
9 dann: ausblenden: H65:M76
10 dann: einblenden: A9:M76
also hab vielen dank
gruß
hansel
und...
sorry dass ich mich erst jetzt melde
also erst mal vielen dank für deine bemühung.
dein vorschlag aus AW10 funktioniert bei mir nicht, das makro kann nicht gestartet werden(ich glaube der Prozedurname soll anders sein?) es kommt aber kein laufzeitfehler.
zu deiner Frage wegen dem, dass komplette spalten ausgebledet werden sollen bzw können:
Das ist leider nicht so, da in dem gesamten Tabellenblatt auch noch andere angaben stehen, die mit dem hier nichts zu tun haben, und ersichtlich bleiben soll.
OHHH... entschuldigung bitte, das hab ich falsch hingeschieben:
gibt er 3 ein sollen die ersten 6 teile ausgeblendet werden
soll natürlich heißen:
gibt er 3 ein sollen die ersten 6 teile eingeblendet werden
ist es so verständlich?
genaure Beschreibung:
Eingabe:
1 dann: ausblenden: H9:M20 & A23:M76
2 dann: ausblenden: A23:M76
3 dann: ausblenden: H23:M34 & A37:M76
4 dann: ausblenden: A37:M76
5 dann: ausblenden: H37:M48 & A51:M76
6 dann: ausblenden: A51:M76
7 dann: ausblenden: H51:M62 & A65:M76
8 dann: ausbelden: A55:M76
9 dann: ausblenden: H65:M76
10 dann: einblenden: A9:M76
also hab vielen dank
gruß
hansel
und...
sorry dass ich mich erst jetzt melde

