Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
864to868
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
864to868
864to868
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

kopiertes Makro funktioniert nicht

kopiertes Makro funktioniert nicht
26.04.2007 14:07:06
andreas

Hallo Zusammen
Ich arbeite gerade anner auswertung, anhand einer tabelle.
Dass sieht dann so aus das er anhand von 2 manuell eingegeben daten in einer Tabelle eine Übereinstimmung sucht anhand der spalte und der zeile welche er über die manuellen Daten bekommen hat... das Makro funktioniert auf dem test sheet leider nicht im originalen. Einen Fehler bekomm ich nicht, er schreibt nur die Informationen nicht in die dafür vorgesehenen Felder, besser gesagt er schreibt überhaupt nichts...
Das Makro:


Public Sub Matrix_auslesen()
Dim lZeile_E  As Long
Dim Lzeile_M  As Long
Dim lFundZei  As Long
Dim iFundSpa  As Integer
Dim iSpalte   As Integer
Application.ScreenUpdating = False
For lZeile_E = 10 To Range("B65536").End(xlUp).Row
'If lZeile_E = 19 Then Stop
For Lzeile_M = 6 To 8
If CDbl(Range("L" & lZeile_E).Value) >= _
CDbl(Range("V" & Lzeile_M).Value) And _
CDbl(Range("L" & lZeile_E).Value) <= _
CDbl(Range("W" & Lzeile_M).Value) + 0.00001 Then
lFundZei = Lzeile_M
Exit For
End If
Next Lzeile_M
Select Case Range("S" & lZeile_E).Value
Case Is < 3999
iFundSpa = 6
Case 4000 To 6000
iFundSpa = 7
Case Is > 6000
iFundSpa = 8
End Select
Range("X" & lZeile_E).Value = Cells(lFundZei, iFundSpa).Value
Next lZeile_E
Application.ScreenUpdating = True
End Sub


das wäre das makro, hoffe ihr könnt mir helfen, ich weiss nichtmal wo ansetzen, da es im anderen sheet funktionierte
Gruss Andreas

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: kopiertes Makro funktioniert nicht
26.04.2007 14:31:31
Jan3
Hi,
Nur an einer Beispieltabelle kann man erkennen, wo der Fehler liegt.
Entsprechend dem Makrocode wird überprüft, ob in einem bestimmten Tabellenbereich bestimmte Bedingungen erfüllt sind. Sind diese erfüllt wird in der Spalte X ein Wert eingetragen.
Woher soll ich wissen, ob diese Werte in Deiner Orginaltabelle vorhanden sind?
Ansonsten läuft der Code ohne Fehler bei mir.
Er trägt natürlich nicht ein, wenn keine Übereinstimmung besteht!
Jan

AW: kopiertes Makro funktioniert nicht
26.04.2007 14:41:26
andreas
hallo jan,
ja das ist klar... nur wenn daten drin stehen müsste die berechnung ja stattfinden... aber er arbeitet nur im hintergrund schreibt aber nix...
hier noch die tabelle... die relevanten spalten und zeilen wenigstens
Userbild
wo denkst du liegt nun der fehler?
Gruss Andreas

Anzeige
AW: kopiertes Makro funktioniert nicht
26.04.2007 16:25:45
andreas
Hallo Zusammen
Problem herausgefunden und behoben... danke für die hilfe
Nun stellt sich aber noch eine andere Frage, leider füllt er mir wenn er nur einen Betrag hat also zbsp. die Prozente, trotzdem einen Betrag ins Feld. Wie definiert man das er nur etwas macht wenn beide Zellen zur Berechnung einen Betrag enthalten, also die Zelle leerbleibt, wenn auf einer der beiden Berechnungszeilen der Wert 0 enthalten ist?
Danke für die Hilfe
Gruss Andreas

AW: kopiertes Makro funktioniert nicht
26.04.2007 20:07:07
Jan3
Hi,
Welchen Fehler hast Du denn behoben? War es vielleicht die Zeilenreferenz?
Für Dein neues Problem kannst Du ja noch eine IF-THEN-Anweisung vor Deiner eigentlichen IF-Anweisung definieren und üperprüfen lassen, ob die Zellen Beträge enthalten.


Public Sub Matrix_auslesen()
Dim lZeile_E  As Long
Dim Lzeile_M  As Long
Dim lFundZei  As Long
Dim iFundSpa  As Integer
Dim iSpalte   As Integer
Application.ScreenUpdating = False
For lZeile_E = 10 To Range("B65536").End(xlUp).Row
'If lZeile_E = 19 Then Stop
For Lzeile_M = 6 To 8
If CDbl(Range("L" & lZeile_E).Value) <> 0 And CDbl(Range("V" & Lzeile_M).Value) <>  _
0 Then
If CDbl(Range("L" & lZeile_E).Value) >= _
CDbl(Range("V" & Lzeile_M).Value) And _
CDbl(Range("L" & lZeile_E).Value) <= _
CDbl(Range("W" & Lzeile_M).Value) + 0.00001 Then
lFundZei = Lzeile_M
Exit For
End If
Next Lzeile_M
Select Case Range("S" & lZeile_E).Value
Case Is < 3999
iFundSpa = 6
Case 4000 To 6000
iFundSpa = 7
Case Is > 6000
iFundSpa = 8
End Select
Range("X" & lZeile_E).Value = Cells(lFundZei, iFundSpa).Value
End If
Next lZeile_E
Application.ScreenUpdating = True
End Sub


Jan

Anzeige
AW: kopiertes Makro funktioniert nicht
27.04.2007 07:59:22
andreas
Hallo Jan
achso, ja ich hab die falsche spaltennummern angegeben, das kommt davon wenn man zuviel reinkopiert.. naja..
das mit der if-then höhrt sich gut an, aber irgendwie verarbeitet er das nicht richtig in der for schleife das er mir dan sagt das 1te. Next besitze keine Forschleife.. gibt es hier in den schleife etwas spezielles zu beachten in bezug auf then anweisungen
Gruss Andreas

AW: kopiertes Makro funktioniert nicht
27.04.2007 08:04:45
andreas
Hmm letzter Kommentar war nicht fertig bin aus versehen auf den knopf gekommen und leider kann man nicht editieren, was hier noch fehlt ist ein "end if" das hab ich auch eingefügt... leider gehts immernoch nicht.. ich denke mal das noch ne else anweisung fehlt welche sagt das er wieder von vorne beginnen soll mit "l_ZeileE +1" wo müsst ich das hinschreiben und wie lautet die syntax
Gruss Andreas und ncohmals danke für die Hilfe

Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige