Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
304to308
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
304to308
304to308
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formel in Werte umschreiben

Formel in Werte umschreiben
03.09.2003 13:15:26
mimi
Hallo, ist ein bißchen mehr als in der Überschrift.

ich habe in K3 eine Formel geschrieben, die ich in die ganzen Bereiche
eintragen (ich kopiere) möchte. Dann soll aus den Formeln ein fester Wert gemacht werden. Kann man die Bereiche irgendwie zusammenfassen? Und was ganz wichtig ist: Im nächsten Monat müssen die Formel eine Spalte weiter nach Spalte "L" aber die gleichen Zeilen.

Kann mir einer beim umschreiben helfen? Ich hab das per Rekorder gamacht, weil ich das so gut nicht kann...

Danke
Mimi


Sub FormelInWert()
Range("K3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISERROR(VLOOKUP(RC2,'Summen und Salden'!R3C1:R180C9,9,0)),0,VLOOKUP(RC2,'Summen und Salden'!R3C1:R180C9,9,0))"
Range("K3").Select
Selection.Copy
Range("K4:K23").Select
ActiveSheet.Paste
Range("K26:K37").Select
ActiveSheet.Paste
Range("K40:K59").Select
ActiveSheet.Paste
Range("K83:K88").Select
Range("K91:K95").Select
Range("K117").Select
Range("K18").Select
Selection.Copy
Range("K26:K37").Select
ActiveSheet.Paste
Range("K40:K59").Select
ActiveSheet.Paste
Range("K62:K80").Select
ActiveSheet.Paste
Range("K83:K88").Select
ActiveSheet.Paste
Range("K91:K95").Select
ActiveSheet.Paste
Range("K98:K114").Select
ActiveSheet.Paste
Range("K117:K134").Select
ActiveSheet.Paste
Range("K137:K148").Select
ActiveSheet.Paste
Range("K151:K174").Select
ActiveSheet.Paste
Range("K179:K191").Select
ActiveSheet.Paste
Range("K194:K227").Select
ActiveSheet.Paste
Range("K232:K252").Select
ActiveSheet.Paste
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel in Werte umschreiben
03.09.2003 13:47:53
Christoph
Hallo mimi,
gebe den Zellen in der Spalte K einen Namen.
Alle betreffenden Zellen markieren -Einfügen - Namen - Namen eintragen (zB: Test)
und dann folgendes Makro:


Sub Formel_in_Bereich_Namen()
Range("A1").Copy
Range("Test").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub


wenn du nur die Werte kopieren willst und nicht die Formel, dann schreibst du
....
Range("Test").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
....

Für die Spalte L genauso, eben mit anderem Namen
Gruß
Christoph
Anzeige
AW: Formel in Werte umschreiben
03.09.2003 14:14:45
mimi
mhhh,

hatte mir das leichter vorgestellt! Mit Namen eingeben dauert das ja genauso lang.

Ich hab mir mal provisorisch geholfen. Ich hab den Buckstaben "K" durch "L" mit "suchen, ersetzt" geändert, weil in meinen Makro nur an 2 Stellen ein "K" vorkommt, wo ich es ganz schnell ändern kann.

Ist stümperhaft - geht aber 99% perfekt!!!

Danke trotzdem
AW: Formel in Werte umschreiben
03.09.2003 14:30:52
Christoph
Hi Mini,
genauso könntest du das K der Spalte in z.B: Range("K62:K80") durch eine Variable ersetzen.
Dabei ist die Schreibweise mit Cells(Spalte, Zeile) hilfreich
Range(Cells(62, i),Cells(82, i))...
setzte dann i =11. (11 ist die 11. Spalte, also K) das nächste Mal setzt du i = 12 für Spalte L

hoffe dir geholfen zu haben
Gruß
Christoph
Anzeige
AW: Formel in Werte umschreiben
03.09.2003 14:16:16
xXx
Hallo,
das schreibt dir die Formeln in die Spalte, die du markiert hast und wandelt gleich in Werte um:

Sub FormelInWert()
Dim strFormel As String, iCol As Integer, arrRng, t As Byte, rngFormel As Range
Application.ScreenUpdating = False
strFormel = "=IF(ISERROR(VLOOKUP(RC2,'Summen und Salden'!R3C1:R180C9,9,0)),0,VLOOKUP(RC2,'Summen und Salden'!R3C1:R180C9,9,0))"
iCol = ActiveCell.Column
'Bereichsdefinition (erste-letzte Zeile)
arrRng = Array(3, 23, 26, 37, 40, 59, 62, 80, 83, 88, 91, 95, 98, 114, 117, 134, _
137, 148, 151, 174, 179, 191, 194, 227, 232, 252)
For t = 0 To UBound(arrRng) - 1 Step 2
Set rngFormel = Range(Cells(arrRng(t), iCol), Cells(arrRng(t + 1), iCol))
rngFormel.FormulaR1C1 = strFormel 'Formel einfügen
rngFormel.Copy  'Bereich kopieren
rngFormel.PasteSpecial xlPasteValues  'Werte einfügen
Next t
Application.CutCopyMode = False
Cells(3, iCol).Select
Application.ScreenUpdating = True
End Sub


Gruß aus'm Pott
Udo
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige