Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zelle in einer Tabelle finden

Zelle in einer Tabelle finden
13.08.2019 12:31:02
Falko
Liebe Experten,
ich scheitere gerade daran ein Makro zu bauen, welches einen bestimmten Wert in eine Tabelle (als Harteintrag) in Abhängigkeit von Zeilen und Spalten einfügt.
Beispiel:
In Spalte A stehen im Bereich A2:A5 die Jahre 2015 bis 2018 und in Zeile B1:D1 stehen Net, Gross und Inflation. Das Makro soll nun anhand von Vorgaben (z.B. Gross im Jahr 2015) wissen, dass der Wert in Spalte B2 einzutragen ist.
Wie würde der Code dazu aussehen?
Vielen Dank und beste Grüße
Falko
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Lösungsvorschlag
13.08.2019 12:45:04
Beverly
Hi Falko,
Sub Ausgabe()
Dim rngZeile As Range
Dim rngSpalte As Range
Set rngZeile = Range("A2:A5").Find(2015, lookat:=xlWhole)
Set rngSpalte = Range("B1:D1").Find("Gross", lookat:=xlWhole)
If Not rngZeile Is Nothing And Not rngSpalte Is Nothing Then
MsgBox rngZeile.Offset(0, rngSpalte.Column - 1)
End If
End Sub


Anzeige
AW: Lösungsvorschlag
13.08.2019 12:56:59
Torsten
Oder ohne Message Box, gleich der Eintrag

Sub finde_zelle()
Dim tRow As Range, tColumn As Range, tCell As Range
Dim Jahr As String, Wort As String, Eingabe As String
Jahr = "2015"
Wort = "Gross"
Eingabe = "Was eingetragen werden soll"
Set tRow = ActiveSheet.Columns(1).Find(What:=Jahr, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
Set tColumn = ActiveSheet.Rows(1).Find(What:=Wort, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
ActiveSheet.Cells(tRow.Row, tColumn.Column).value = Eingabe
End Sub

So bist du auch nicht eingeschraenkt auf die Bereiche A1:A5 und B2:D2.
Gruss Torsten
Anzeige
AW: Lösungsvorschlag
13.08.2019 14:05:05
Falko
Vielen lieben Dank schon einmal!
Ich habe das Makro versucht so zu schreiben, dass ich über die Variable SaleYear die Zeile finden, in welche der gewünschte Wert eingetragen wird:
Dim ws As Worksheet
Set ws = Worksheets("Sensitivity")
Dim SaleYear As Range
Set SaleYear = wsInput.Range("S38:S66").Find(ws.Cells(12, 4), lookat:=xlWhole)
ws.Cells(14 + i, 4).Select
Selection.Copy
wsInput.Cells(37 + SaleYear, 20).PasteSpecial Paste:=xlPasteValues
Leider funktioniert es nicht. Der Fehler befindet sich in der letzten Zeile des eingefügten Makros.
Könnt ihr mir u.U. sagen, woran es liegt?!
Tausend Dank und beste Grüße
Falko
Anzeige
AW: Lösungsvorschlag
13.08.2019 14:11:21
Daniel
Verstehe nicht ganz, was du vorhast - aber dein Problem hier ist, dass SaleYear eine Range ist. Um 37 + SaleYear zu rechnen, bräuchtest du aber einen Wert.
Grüße
Daniel
AW: Lösungsvorschlag
13.08.2019 14:25:57
Falko
Ok, danke.
Was müsste ich ändern, um den Zeilenwert jener Zelle zu erhalten, in welche ich den Zielwert hineinkopieren möchte?
Danke!
Falko
Anzeige
AW: Lösungsvorschlag
13.08.2019 14:28:09
Torsten

SaleYear.Row

AW: Lösungsvorschlag
13.08.2019 14:32:46
Falko
Hi Thorsten,
vielen Dank erneut!
Meine Kenntnisse sind leider so gering, dass ich alleine damit wenig anfangen kann, sorry!
Könntest Du mir bitte sagen, wo ich diesen Hinweis in das nachfolgende Makro einbetten muss bzw. wie dieses abzuändern wäre:
Dim SaleYear As Integer
SaleYear.Row = wsInput.Range("S38:S66").Find(ws.Cells(12, 4), lookat:=xlWhole)
ws.Cells(14 + i, 4).Select
Selection.Copy
wsInput.Cells(37 + SaleYear, 20).PasteSpecial Paste:=xlPasteValues
Vielen Dank!!
Anzeige
AW: Lösungsvorschlag
13.08.2019 14:41:33
Daniel
Anders herum:
Dim SaleYear As Range
Set SaleYear = wsInput.Range("S38:S66").Find(ws.Cells(12, 4), lookat:=xlWhole)
ws.Cells(14 + i, 4).Copy
wsInput.Cells(37 + SaleYear.Row, 20).PasteSpecial Paste:=xlPasteValues
Das Select kannst du komplett weglassen.
Gruß
Daniel
Anzeige
AW: Lösungsvorschlag
13.08.2019 15:32:57
Falko
Großartig, vielen Dank an euch alle!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige