online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon hansel_H vom 12.12.2019, 12:02 Options

Zelleninhalt wiederherstellen

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 schreiben

Antwort 1 von Marie vom 12.12.2019, 12:10 Options

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

Antwort 2 von hansel_H vom 12.12.2019, 12:19 Options

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

Antwort 3 von aiuto vom 12.12.2019, 13:11 Options

Hi Hansel,

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 Sub

Damit wären die Inhalte Unsichtbar.

mfg
vom Helfer

Antwort 4 von hansel_H vom 12.12.2019, 13:31 Options

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

Antwort 5 von hansel_H vom 12.12.2019, 13:35 Options

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

Antwort 6 von hansel_H vom 12.12.2019, 14:11 Options

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

Antwort 7 von aiuto vom 12.12.2019, 14:21 Options

Zitat:
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?

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 vom 12.12.2019, 14:47 Options

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

Antwort 9 von aiuto vom 12.12.2019, 14:56 Options

Nachgefragt:

Sollen (könnten) etwa die kompletten Spalten ausgeblendet werden?
Das würde es Vereinfachen.
mfg
vom Helfer

Antwort 10 von aiuto vom 12.12.2019, 15:53 Options

Deine Aussagen sind leider etwas widersprüchlich.
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.

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 Sub

Die Anwender-Eingabe erfolgt in Zelle [B2]

mfg
vom Helfer

Antwort 11 von hansel_H vom 13.12.2019, 07:35 Options

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

Ähnliche Themen

Zelleninhalt in Kopfzeile übernehmen
atze43  05.07.2007 - 274 Hits - 6 Antworten

Adressleiste im Explorer wiederherstellen
misspiggy23  04.08.2007 - 454 Hits - 2 Antworten

sxc Dateien wiederherstellen
ingomoritz  27.10.2007 - 155 Hits - 2 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026