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

Zelle finden

Zelle finden
14.08.2019 12:06:48
Falko
Me again...
Liebe Experten,
erneut eine Frage, warum mein Makro nicht funktioniert.
Fehler, der angezeigt wird: "Fehler beim Kompilieren: Ungültige Bezeichnung"
Ziel ist es, dass das SaleYear die Zeile speichert, in der der Wert steht, der sich hinter der Variable "Year" befindet.
Sub SensitivitätNEY()
Range("E15:g35").ClearContents
Dim ws As Worksheet
Set ws = Worksheets("Sensitivity")
Dim wsInput As Worksheet
Set wsInput = Worksheets("Inputs")
Dim wsSummary As Worksheet
Set wsSummary = Worksheets("Summary")
Dim Year As Integer
Year = ws.Cells(ws(12, 4).Value)
Dim ii As Integer
For ii = 0 To 20
Dim SaleYear As Long
SaleYear = wsInput.Rows("S:S").Find(What:=Year).Column
ws.Cells(15 + ii, 4).Copy
wsInput.Cells(SaleYear.Row, 20).PasteSpecial Paste:=xlPasteValues
' Sale Price
ws.Cells(15 + ii, 5).Value = wsSummary.Cells(17, 14).Value
' IRR
ws.Cells(15 + ii, 6).Value = wsSummary.Cells(48, 8).Value
' Cash on Cash
ws.Cells(15 + ii, 7).Value = wsSummary.Cells(46, 8).Value
Next ii
' Base Case
ws.Cells(25, 4).Copy
wsInput.Cells(SaleYear.Row, 20).PasteSpecial Paste:=xlPasteValues
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle finden
14.08.2019 12:15:35
EtoPHG
Hallo Falko,
1. Ein Variable (wie SalesYear) hat keine Eigenschaft (wie .Row), sondern ist nur von einem bestimmten Datentyp.
2. Suchst du mit .Find eine Zelle (.Range) in der Spalte S, also macht .Column hier überhaupt keinen Sinn, den S ist immer die Spalte 19! Du möchtest aber gem. Beschreibung die Zeile (.Row).
3. Wenn .Find nichts findet ist das Resultat Nothing. Dem musst du im Code Rechnung tragen. Schau dir die VB-Hilfe zur .Find Methode an!
Gruess Hansueli
AW: Zelle finden
14.08.2019 12:28:50
Falko
Ok, danke schon einmal.
Bei dem nachfolgenden Code (den ich gestern schon einmal gepostet habe, sorry dafür) habe ich das Lokalfenster (Ansicht - Lokal-Fenster) als Hilfe hinzugefügt und das SaleYear wird mit "Nothing" ausgewiesen, obwohl in der Zelle ws.Cells(12,4) ein Wert steht. Der Wert wird in dieser Zelle (D12) als Jahr(Zelle) in Excel ermittelt.
Ich bin ratlos!
Sub SensitivitätNEY()
Range("E15:g35").ClearContents
Dim ws As Worksheet
Set ws = Worksheets("Sensitivity")
Dim wsInput As Worksheet
Set wsInput = Worksheets("Inputs")
Dim wsSummary As Worksheet
Set wsSummary = Worksheets("Summary")
Dim ii As Integer
For ii = 0 To 20
Dim SaleYear As Range
Set SaleYear = wsInput.Range("S38:S66").Find(ws.Cells(12, 4), lookat:=xlWhole)
ws.Cells(15 + ii, 4).Copy
wsInput.Cells(SaleYear.Row, 20).PasteSpecial Paste:=xlPasteValues
' Sale Price
ws.Cells(15 + ii, 5).Value = wsSummary.Cells(17, 14).Value
' IRR
ws.Cells(15 + ii, 6).Value = wsSummary.Cells(48, 8).Value
' Cash on Cash
ws.Cells(15 + ii, 7).Value = wsSummary.Cells(46, 8).Value
Next ii
' Base Case
ws.Cells(25, 4).Copy
wsInput.Cells(SaleYear.Row, 20).PasteSpecial Paste:=xlPasteValues
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige