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

Formel wird in Code als Wert erkannt

Formel wird in Code als Wert erkannt
25.08.2022 17:39:58
Marc
Hallo zusammen
Ich habe einen VBA-Code, welcher mir jeden Wert in der Zeile A ausgibt. Nun habe ich das Problem, dass in der Hilfstabelle in Zeile A eine Formel ist, sprich es werden leere Zellen als Werte erkennt, die mit dieser Formel als leer gekennzeichnet werden (Formel wenn(B6="";""). Wie müsste ich den Code anpassen, damit nur Werte erkennt werden?

For Each Zelle In Range(Sheets("Hilfstabelle").Cells(6, 1), .Sheets("Hilfstabelle").Cells(6, 1).End(xlDown))
.Sheets("Hilfstabelle_Diagramm").Cells(2, 53).Value = Zelle.Value
Vielen Dank
Marc

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

Betreff
Datum
Anwender
Anzeige
AW: Formel wird in Code als Wert erkannt
25.08.2022 18:00:25
onur
Ehrlich gesagt, habe ich keine Ahnung, was du da sagen willst. Poste doch mal die Datei und erkläre noch mal genau, wie es aussehen soll, wenn alles korrekt läuft.
AW: Formel wird in Code als Wert erkannt
25.08.2022 19:47:46
Daniel
Hi
Als erstes zu besseren Verständigung:
Zeilen sind waagrecht und mit 1, 2, 3 usw beschriftet
Spalten sind senkrecht und mit A, B, C usw beschriftet
Bitte daran halten, sonst kann es Missverständnisse geben.
Das musst du abfragen.
Mit folgendem Code werden diese Zellen übersprungen:

For Each Zelle In Range(Sheets("Hilfstabelle").Cells(6, 1), .Sheets("Hilfstabelle").Cells(6, 1).End(xlDown))
If Zelle.Value  "" Then
.Sheets("Hilfstabelle_Diagramm").Cells(2, 53).Value = Zelle.Value
End if
Next
Sollten die anderen Werte Zahlen sein, dann kann man auch gleich in der Schleife angeben, dass diese nur über die Zellen laufen soll, die eine Formel haben und eine Zahl als Ergebnis ausgeben.
Damit kann man sich oft auch die genaue Beschreibung des Zellbereichs ersparen, weil dann Texte und Leerzellen automatisch außen vor sind:

For Each Zelle In Sheets("Hilfstabelle").Columns(1).SpecialCells(xlcelltypeformulas, 1).Cells
.Sheets("Hilfstabelle_Diagramm").Cells(2, 53).Value = Zelle.Value
Next
Gruß Daniel
Anzeige
AW: Formel wird in Code als Wert erkannt
26.08.2022 11:27:09
Marc
Herzlichen Dank, funktioniert bestens.
Gruss
Marc
AW: Formel wird in Code als Wert erkannt
25.08.2022 18:01:12
Nepumuk
Hallo Marc,
teste mal:

Public Sub Test12()
Dim lngLastUsedRow As Long
Call GetLastCell(Worksheets("Hilfstabelle").Columns(6), lngLastUsedRow, 0, True, False)
MsgBox lngLastUsedRow
End Sub
Private Function GetLastCell( _
ByRef probjRange As Range, _
ByRef prlngLastRow As Long, _
ByRef prlngLastColumn As Long, _
Optional ByVal povblnReturnLastRow As Boolean = True, _
Optional ByVal povblnReturnLastColumn As Boolean = True) As Boolean
Dim objCell As Range
If Application.CountBlank(probjRange)  probjRange.Cells.CountLarge Then
With probjRange
If povblnReturnLastRow Then
Set objCell = .Find(What:="*", LookIn:=xlValues, Lookat:=xlWhole, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious)
prlngLastRow = objCell.Row
GetLastCell = True
End If
If povblnReturnLastColumn Then
Set objCell = .Find(What:="*", LookIn:=xlValues, Lookat:=xlWhole, _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious)
prlngLastColumn = objCell.Column
GetLastCell = True
End If
End With
Set objCell = Nothing
End If
End Function
Gruß
Nepumuk
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige