Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1320to1324
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

Erste Zeile mit Formel suchen, kopieren, Wert einf

Erste Zeile mit Formel suchen, kopieren, Wert einf
16.07.2013 09:24:05
Birgit
Hallo nochmals,
ich möchte in einen Excel-Sheet die erste Zeile (ab Zeile 6) suchen, die Formeln enthält (SVerweis); diese Zeile soll dann markiert werden und als Wert in diesselbe Zeile eingefügt werden, mein bisheriger kläglicher Versuch:
Sub Formel_Finden()
Windows("Mappe1.xlsm").Activate
Worksheets("Tabelle1").Select
Dim firstrow As Long
Dim i As Long
firstrow = 6
For i = firstrow To 1 Step -1
If ActiveCell.Cells(i, "C").HasFormula Then
Exit For
End If
Next
End 

Sub
funkioniert leider gar nicht - könnt ihr mir eventuell auch hier weiterhelfen?
DANKE!

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Erste Zeile mit Formel suchen, kopieren, Wert einf
16.07.2013 09:50:12
Klaus
Hi Birgit,
das ist ja ganz falsch :-)
Dein Code macht schon etwas - nichts. Es steht aber auch nichts im Code, was er machen soll! Du hast bei gefundener Zelle nur "Exit For" stehen ...
Übrigens, Activecell.Cell(x,y) gibt es nicht. Du referenzierst entweder ActiveCell, oder Cell(x,y).
Sub Formel_Finden()
Windows("Mappe1.xlsm").Activate
Worksheets("Tabelle1").Select
Dim firstrow As Long
Dim i As Long
firstrow = 6
For i = firstrow To 1 Step -1
If Cells(i, 3).HasFormula Then
Cells(i, 3).entirerow.value = Cells(i, "C").entirerow.value
Exit For
End If
Next
End Sub

Der Code geht in Tabelle1 in Mappe1 (heissen die wirklich so?), sucht dort in Spalte C (=3) von Zeile 6 rückwärts bis Zeile 1 (also insgesamt 6 Zeilen) nach einer Formel, und tauscht bei gefundener Formel die gesamte Zeile gegen ihre Werte aus.
Ich bezweifele ganz stark, dass es das ist was du möchtest. ABer es ist exakt das, wonach du gefragt hast!
Grüße,
Klaus M.vdT.

Anzeige
AW: Erste Zeile mit Formel suchen, kopieren, Wert einf
16.07.2013 10:11:51
Rudi
Hallo,
der Code sucht aber die letzte Zelle mit Formel.
Die erste im Bereich C6:Cxx:
Sub aaa()
Dim rngF As Range
On Error Resume Next
Set rngF = Range(Cells(6, 3), Cells(Rows.Count, 3).End(xlUp)).SpecialCells(xlCellTypeFormulas) _
.Cells(1)
On Error GoTo 0
If Not rngF Is Nothing Then
With rngF
With .EntireRow
.Copy
.PasteSpecial xlPasteValues
End With
.Select
End With
Application.CutCopyMode = False
End If
End Sub

Gruß
Rudi

C6:Cxxx oder C1:C6 ?
16.07.2013 10:20:51
Klaus
Hallo Rudi,
im ersten Post wird (firstrow to 1 step -1) impliziert, dass eine Zeile im Bereich 1:6 gesucht wird. Ich halte das auch für unwarscheinlich ... wir werden wohl auf Antwort von Birgit warten müssen.
Aber sehr schön, wie du das ohne Schleife mit SpecialCells gelöst hast!
Grüße,
Klaus M.vdT.

Anzeige
AW: C6:Cxxx oder C1:C6 ?
16.07.2013 11:03:14
Birgit
Hallo!
Erstmal vielen vielen Dank für die Antworten - ich habe mir den Code aus diversen Foren zusammengebastelt - anscheinend schaut er auch genauso aus :o)
Also was ich will:
Es soll ab der 6. Zeile die Spalte C bis Z durchsucht werden und die erste Zeile mit Formel gefunden werden (Sverweis) - in dieser gefunden Zeile soll dann der Sverweis durch Werte ersetzt werden.
Zur Hintergrund Info:
Es handelt sich um eine Lagerstandsdatei, bei der ich täglich die Werte mitschreibe - d.h. in Spalte A steht das Datum und in Spalte B der Wochentag. Nun ermittle ich mir aufgrund einer .csv Datei mittels den Sverweis die Werte des jeweiligen Tages. Da ich die .csv Datei täglich ersetze, muss ich den SVerweis als Wert überschreiben, damit die historischen Werte erhalten bleiben

Anzeige
AW: C6:Cxxx oder C1:C6 ?
16.07.2013 11:13:08
Rudi
Hallo,
dann so:
Sub aaa()
Dim rngF As Range
On Error Resume Next
Set rngF = Range("C:Z").SpecialCells(xlCellTypeFormulas).Cells(1)
On Error GoTo 0
If Not rngF Is Nothing Then
With rngF
With .EntireRow
.Copy
.PasteSpecial xlPasteValues
End With
.Select
End With
Application.CutCopyMode = False
End If
End Sub

Gruß
Rudi

AW: C6:Cxxx oder C1:C6 ?
16.07.2013 12:19:19
Birgit
Hallo!
danke - aber irgendwie tut er da nichts - ist das so richtig?
Sub Peroixde()
Windows("LAGER Rohstoffe ab 01.01.2013 v2.xlsm").Activate
Sheets("Peroxide").Select
Dim rngF As Range
On Error Resume Next
Set rngF = Range("C:Z").SpecialCells(xlCellTypeFormulas).Cells(1)
On Error GoTo 0
If Not rngF Is Nothing Then
With rngF
With .EntireRow
.Copy
.PasteSpecial xlPasteValues
End With
.Select
End With
Application.CutCopyMode = False
End If
End Sub

Anzeige
AW: C6:Cxxx oder C1:C6 ?
16.07.2013 12:24:52
Birgit
Sorry - hat sich erledigt - hab den Fehler gefunden - Danke nochmals!!!

349 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige