Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1752to1756
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

excel formel durch wert ersetzen vba

excel formel durch wert ersetzen vba
27.04.2020 07:22:48
Maxfly
Hallo zusammen im Forum,
ich bin neu hier und möchte mich kurz Vorstellen.
Mein Name ist Peter und ich möchte meine Kentnisse in VBA erweitern, ich arbeite mit Office 2016 und Win10.
Ich lese schon seit geraumer zeit im Forum und habe auch schon nutzen daraus gezogen und erhoffe mir für meinen weiteren Weg durch die VBA Welt unterstützung im Forum. Bekanntlicher weise ist ja aller Anfang schwer aber ich freue mich schon jetzt auf einen Interresanten Austausch hier.
Nun zu meinem 1. Problem:
Ich habe eine Intelligente Tabelle mit Formeln die durch den folgenden Code die Formeln durch Werte ersetzt.
Private Sub Worksheet_Calculate()
Dim objCell As Range
For Each objCell In Range("G30:Q41")
If objCell.HasFormula Then
If objCell.Text  "" Then
objCell.Value = objCell.Text 'oder = objCell.Value
End If
End If
Next
End Sub

dieser Code aus dem Forum funktioniert Super aber meine hinterlegten Formeln sind dann Weg. Gibt es eine Möglichkeit den Code abzuändern das er mir die letzte Zeile mit den Formeln erhält und nur die Werte davor ändert? Ich habe schon versucht mit Rows -1 eine Lösung zu finden aber das klappt leider nicht.
Dann hab ich noch eine Frage, kann man die Range auch Dynamisch machen so dass sie mit der Intelligenten Tabelle wächst?
Ich hoffe es kann mir hir jemand weiter helfen!
Danke schon mal im Vorraus!
Gruß Peter

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Intelligente Tabelle
27.04.2020 08:04:36
Maxfly
Danke Ralf für die schnelle Antwort.
da muss ich mich noch ein bischen Einlesen.
Gruß Peter
AW: Intelligente Tabelle
27.04.2020 08:40:35
Maxfly
Danke RPP63,
ich werde das heute Abend mal in angriff nehmen und mich dann wieder Melden.
Gruß Peter
Anzeige
AW: ListObject wert ersetzen vba
27.04.2020 07:57:39
hary
Moin

Dim objCell As Range
With Worksheets("Tabelle1").ListObjects("Tabelle1")'--Name des Blattes und int. Tabelle  _
anpassen
For Each objCell In .DataBodyRange.Cells(1).Resize(.ListRows.Count - 1, .ListColumns.Count)
If objCell.HasFormula Then
If objCell.Text  "" Then
objCell.Value = objCell.Text
End If
End If
Next
End With


Dim bereich As Range
With Worksheets("Tabelle1").ListObjects("Tabelle1")
Set bereich = .DataBodyRange.Cells(1).Resize(.ListRows.Count - 1, .ListColumns.Count)
bereich = bereich.Value
End With

gruss hary
Anzeige
AW: ListObject wert ersetzen vba
27.04.2020 08:08:10
Maxfly
Danke Hary,
für die schnelle Antwort.
ich denke das hilft mir schon mal weiter muß das ganze noch Testen.
Gruß Peter
AW: ListObject wert ersetzen vba
28.04.2020 06:37:18
Maxfly
Hallo noch einmal zusammen,
Bei dem code von Ralf und Hary werden die Formeln nicht gegen Werte getauscht.
Habe beide ausprobiert und auch Blatt und Index angepasst aber es will nicht funktionieren!
Wie gesagt ich verstehe das nicht, bin auch noch ganz am Anfang. Für Tips und weitere Unterstützung wäre ich Euch sehr dankbar.
Gruß Peter
AW: ListObject wert ersetzen vba
28.04.2020 10:58:58
Maxfly
Hallo zusammen,
nachdem ich den Code von Hary nochmal an meine Tabellen angepasst habe funktioniert alles Super.
Danke noch mal an alle für die Unterstützung. Wieder mal was dazugelernt.
Gruß Peter
Anzeige
einfach so
27.04.2020 08:07:14
RPP63

With Tabelle2.ListObjects(1).DataBodyRange.Offset(-1, 0).SpecialCells(xlCellTypeFormulas)
.Value = .Value
End With

AW: einfach so
27.04.2020 08:19:43
Maxfly
Sorry wenn das eine Dumme Frage ist, aber muss ich das in meine code einbauen wenn ja, Wo?
oder muss ich meinen code ersetzen.
Gruß Peter
Das ist der gesamte Code!
27.04.2020 08:28:07
RPP63
Du musst wahrscheinlich den CodeName des Tabellenblatts anpassen.
Wenn nur eine Tabelle im Blatt ist, kannst Du das Objekt (so wie ich es gemacht habe) über den index 1 ansprechen.
Gruß Ralf
AW: Das ist der gesamte Code!
27.04.2020 09:07:43
Maxfly
Hallo Ralf,
habe das jetzt noch mal Probiert er nimmt den neuen Datensatz nicht in der Tabelle auf und lässt die Formeln auch im Datensatz davor stehen. Was ich aber nicht verstehe ist das er in meinen schon 6 bestehenden Datensätzen die Formel gegen Werte getauscht hat.
Gruß Peter
Anzeige
AW: Das ist der gesamte Code!
27.04.2020 10:09:43
Maxfly
Hallo Ralf,
ich Habe jetzt mal eine Tabelle mit den Formeln erstellt und den Code eingefügt.
Jetzt geht aber nichts mehr, er nimmt zwar jetzt die neuen Datensätze ersetzt mir aber in den alten Datensätzen die Formel nicht durch Wert.
Ich versuche jetzt mal die Tabelle mit anzuhängen, vielleicht kannst Du dann besser abschätzen woran es liegt.
https://www.herber.de/bbs/user/137059.xlsx
Gruß Peter

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige