Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA: spaltenweise suchen

Forumthread: VBA: spaltenweise suchen

VBA: spaltenweise suchen
27.10.2006 14:43:39
Anton
Hallo Leute,
meine Tabelle mit meiner Monats-Statistik sieht so aus:
Spalte A: 01.10.2006
Spalte B: 02.10.2006
....
Spalte AF: 31.10.2006
ich möchte per VBA die Ergebnisse in meine Statistik eintragen lassen.
Dazu soll das Makro in jeder Spalte nachschauen ob das Auswerungsdatum gefunden wird:
Hier mein sehr lückenhafter Ansatz:
For ???????
Cells(2, 1).activate
if not activecell.value = Datum1 then
activecell = activecell + nächsteSpalte
else activecell.value = ErgebnisWert
next
"Datum1" habe ich bereits deklariert.
Auch "ErgebnisWert" ist bereits deklariert.
Wer kann mir mit "activecell + nächsteSpalte" weiterhelfen?
Auch bei der "For - next"-schleife brauche ich Eure Hilfe.
Anfangs dachte ich daran das Ganze Zeilenweise zu gestalten....
Das findet meine Chefin garnicht schön.
Also bin ich auf Eure Hilfe angewiesen.
Mein Dank geht schon jetzt in Eure Richtung.
Servus,
Anton
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: spaltenweise suchen
27.10.2006 14:50:55
Peter Feustel
Hallo Anton,
versuch einmal das beigefügte Makro:
Public

Sub Suchen()
Dim iSpalte  As Integer
Dim lLetzte  As Long
Dim Datum1   As Date
For iSpalte = 1 To 31
If Datum1 = CDate(Cells(1, iSpalte).Value) Then
lLetzte = IIf(Cells(65536, iSpalte) <> "", 65536, _
Cells(65536, iSpalte).End(xlUp).Row) + 1
Cells(lLetzte, iSpalte).Value = "Dein Statistik-Wert"
Exit For
End If
Next iSpalte
End Sub

Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: VBA: spaltenweise suchen
27.10.2006 15:02:43
IngGi
Hallo Anton,
das geht auch ohne Schleife:

Sub test()
'Variablen deklarieren
Dim rng As Range
Dim Datum1 As Date
Dim ErgebnisWert As Double
'Variablen zum Testen mit Werten füllen
Datum1 = Date
ErgebnisWert = 5.09
'Datum in Zeile 1 suchen und Zelle in die Variable rng übergeben
Set rng = Rows("1:1").Find(What:=Datum1)
'Prüfen, ob Datum gefunden wurde und wenn ja, ErgebnisWert in Zelle darunter schreiben
If Not rng Is Nothing Then rng.Offset(1, 0) = ErgebnisWert
End Sub

     Code eingefügt mit Syntaxhighlighter 4.3

Gruß Ingolf
Anzeige
Danke
27.10.2006 15:56:33
Anton
Hallo Ihr Beiden,
vielen Dank für Eure Vorschläge.
Werd' sie heute noch testen.
Servus,
Anton
;

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