Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1528to1532
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 innerhalb einer Matrix finden

Zelle innerhalb einer Matrix finden
09.12.2016 14:32:35
lowball
Hallo liebe VBA-Freunde,
ich möchte in einer Matrix den Ort einer Zelle finden ( um dann schlussendlich diese Zelle zu kopieren und als Wert wieder einzufügen). Innerhalb der Matrix stehen nur Formeln, ( =WENN(UND(O$2=$B$1;$B$2=$N6);corrCoeff;""), welche mir ein Wert ausgeben, welcher durch ein anderes Makro berechnet wird. Damit das andere Makro weiterlaufen kann ohne, dass die Werte innerhalb der Matrix wieder verschwinden, möchte ich diese nach Berechnung fixieren.
Bisher habe ich folgenden Code dazu geschrieben, wobei der Laufzeitfehler '91: Objektvariable oder With-Blockvariable nicht festgelegt' aufpoppt:
Dim corr As Worksheet
Set corr = Sheets("Correlation")
corrCoeff = corr.Range("A6")
Dim cell As Range
Set cell = corr.Range("O3:AF21").Find(corrCoeff, LookIn:=xlFormulas)
Debug.Print cell.Address
cell = corrCoeff
Ich hoffe es kann mir von Euch schnell einer helfen. Vielen Dank und liebe Grüße, Klaus

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
LookIn:=xlValues --> weil berechneter Wert!
09.12.2016 15:31:29
Luc:-?
Und ggf noch das NichtFinden absichern: If Not Cell Is Nothing Then
Außerdem hast du den Vorteil, deutsche VariablenNamen benutzen zu können. Dadurch ist es weniger wahrscheinlich, ein VBA-KeyWord damit zu treffen. Also nutze ihn auch! Du musst dabei idR nicht unbedingt beweisen, dass du Englisch kannst! ;->
Gruß, Luc :-?
AW: LookIn:=xlValues --> weil berechneter Wert!
09.12.2016 15:48:38
lowball
Hallo, danke erstmal für deine schnelle Antwort!
Ich habe meinen Code deinen Anmerkungen angepasst. Die mit dem VBA-Wunsch verbundene Arbeit ist in Englisch, daher versuche ich möglichst viel auf Englisch zu halten, aber habe jetzt Zelle anstatt cell benutzt, wenn das ein VBA-Keyword darstellt. Leider findet er die gewünschte Zelle immer noch nicht. Wenn ich den Wert in die Zelle daneben einfüge, gibt mir das Makro die Zelle P4 anstatt wie gewünscht O4 zurück.
Dim Zelle As Range
Set Zelle = corr.Range("N3:AF21").Find(corr.Range("A6").Value, After:=Range("N3"), LookIn:=xlValues)
If Zelle Is Nothing Then
Debug.Print "Name was not found."
Else
Debug.Print "Name found in :" & Zelle.Address
End If
Anzeige
Langer Rede kurzer Sinn - versuch's damit:
10.12.2016 02:40:04
Luc:-?

Option Explicit
Sub FindeZelle()
Const adSuchWert$ = "A6", adNachZelle$ = "AF21", _
adSuchBereich$ = "O3:AF21", naAktBlatt$ = "Correlation"
Dim corrCoeff, FundZelle As Range, SuchBereich As Range, WsCorr As Worksheet
Set WsCorr = Sheets(naAktBlatt)
Set SuchBereich = WsCorr.Range(adSuchBereich)
corrCoeff = WsCorr.Range(adSuchWert)
Set FundZelle = SuchBereich.Find(corrCoeff, WsCorr.Range(adNachZelle), xlValues, _
xlWhole, xlByRows, xlNext)
If Not FundZelle Is Nothing Then
Debug.Print "Name found in: " & FundZelle.Address
Else: Debug.Print "Name was not found."
End If
Set WsCorr = Nothing: Set SuchBereich = Nothing: Set FundZelle = Nothing
End Sub
Alles klar…?! ;-]
Morrn, Luc :-?
Anzeige

319 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige