2.8k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich brauche Eure hilfe in VBA - Excel. Kann mir jemand vba-code schreiben. Es muss Makro sein!

Ich möchte alle meine geöffneten Rechnungen (ca. 80 stück) mit der K-Liste vergleichen.

1. Auf der Rechnung in der Zelle "D19" steht immer Lieferanten-Nr. - wert soll gemerkt werden
Nettobetrag steht immer in der Zelle "D61" - wert soll gemerkt werden
MwSt steht immer in der Zelle "D62" - wert soll gemerkt werden
Gesamtbetrag steht immer in der Zelle "D63" - wert soll gemerkt werden


2. In der K-Liste mit allen Lieferanten steht in der spalte A(ab zelle 4)
3.Gemerkte Lieferanten-Nr. mit der K-Liste in spalte "A"suchen
4.dann die gemerkte werte (Nettobetrag , MwSt, Gesamtbetrag ) in der K-Liste spalte "G" Nettobetrag, "H" MwSt, "I" Brutto vergleichen
5 wenn es richtig ist dann tue nichts
6 wenn falsch dann markiere die Zelle rot
7. fertig - schließe Rechnungsdatei (K-Liste bleibt weiter offen)
8. prüfe die nächste Rechnungsdatei mit der K-Liste
9. und so weiter ...


Wenn das jmd. schreiben kann wäre ich Ihm sehr dankbar!
Ein Profi wie Ihr braucht doch nur 10 Min. dafür

Gruß, CATY

10 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Caty,

die Rechnungsdateien haben auch Namen und befinden sich alle in dem gleichen Verzeichnis?

Übrigends finde ich es sehr vermessen etwas zu fordern und dann davon auszugehen, dass jemand für Dich ein Makro erstellt und dafür nur 10 Minuten benötigt. Da man Deine Daten nicht hat, muss man sich erst mal Beispieldateien erstellen, die ähnlich Deiner Dateien sind. Dass alleine dauert schon mehr als 10 Minuten.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Caty,

weitere Frage(n):
- Wie lautet der Blattname in der Datei "K-Liste"?

- Wie lautet der Blattname in der Rechnung, von dem die Werte gehlt werden sollen?

- Sind die Rechnungsdateien wirklich offen, oder sollen diese nicht besser automatisch geöffnet und nach dem Vergleichen wieder geschlossen werden?

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
Hallo Coros,

es tut mir leid, wenn es falsch rübergekommen ist, so habe ich es nicht gemeint.

SORRY

1. ja, jede Rechnungsdatei hat immer eine anderen Name( deshalb wollte ich die aktive Rechnungsdatei mit der K-Liste vergleichen wird)
2. Ich lasse mir über eine Abfrage alle automatisch bsp. für den Monat Januar alle öffnen, Jede Rechnungsdatei befindet sich in einem anderen Ordner.

weitere Frage(n):
- Wie lautet der Blattname in der Datei "K-Liste"?
-K-Liste.xls (Tabelle1)

- Wie lautet der Blattname in der Rechnung, von dem die Werte gehlt werden sollen?
wie gesagt, jede Rechnungsdatei hat eine anderen Namen , Blattname ist Abrechnung

- Sind die Rechnungsdateien wirklich offen, oder sollen diese nicht besser automatisch geöffnet und nach dem Vergleichen wieder geschlossen werden?
ja, die Rechnungsdatei sind wirklich offen


Danke für deine Mühe
LG, Caty
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Caty,

lade Dir mal unter

http://www.excelbeispiele.de/beispiel_supportnet/K-Liste.zip

eine Zipdatei herunter und entpacke diese in ein beliebiges Verzeichnis. Starte danach die Datei "K-Liste.xls " und wechsele mit der Tastenkombination Alt F11 in die VBA-Umgebung. Gehe in das Modul1 und ändere in der Zeile

Const strPath As String = "H:\Müll\Testrechnungen\"den Pfad wohin Du die Datei entpackt hast. Ändere nicht den Namen "Testrechnungen", da sich darin die Beispielrechnungen befinden.
Wenn Du nunauf den Button klickst, werden alle Rechnungsdateien im Verzeichnis "Testrechnungen" geöffnet und ausgelesen. Danach wird wie gewünscht geprüft und die Zeilen eingefärbt. Die Rechnungsdatei wird abschließend wieder geschlossen.

Bei Fargen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
Hallo coros,

Vielen Dank.

eine kleines Problem habe ich noch.

Die Rechnungsbeträge werden nicht richtig verglichen.


bsp.
NETTO 90,00 findet er nicht in der k-liste


wo ist das Problem

Datentyp Problem ?

LB CATY
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Caty,

wo wird der Betrag nicht gefunden? In meiner Beispieldatei oder bei Dir? Du musst schon etwas genauere Angaben machen, da ansonsten keine Hilfestellung möglich ist.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
Hallo Coros,

Aus meiner Rechnungsdatei nimmt der den wert ( D61,D62,D63) und findet den wert in der K-Liste nicht!

Die Beträge stimmen überein, wird aber falsch markiert!
Wie kommt das ?


Dim objDateityp
Dim dblKundennummer As String
Dim dblNettoBetrag As Double
Dim dblMWstBetrag As Double
Dim dblBruttoBetrag As Double
Dim lngRow As Long

dblKundennummer = .Range("D19")
dblNettoBetrag = .Range("D61")
dblMWstBetrag = .Range("D62")
dblBruttoBetrag = .Range("D63")Workbooks.Open K_Liste

For lngRow = 4 To Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row
If Sheets("Tabelle1").Cells(lngRow, 1) = dblKundennummer Then
If Sheets("Tabelle1").Cells(lngRow, 7) <> dblNettoBetrag Or _
Sheets("Tabelle1").Cells(lngRow, 8) <> dblMWstBetrag Or _
Sheets("Tabelle1").Cells(lngRow, 9) <> dblBruttoBetrag Then
Sheets("Tabelle1").Rows(lngRow).Font.ColorIndex = 4

Else
Sheets("Tabelle1").Rows(lngRow).Font.ColorIndex = 3


End If

End If

Next lngRow
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Caty,

ohne Deine Datei zu kennen wird es schwer. In meiner Beispieldatei gab es keine Probleme damit. Also muss der Fehler in Deiner Datei liegen. Du müsstest mal die Datei mit der K-Liste und eine Rechnungsdatei, die nicht gefunden wird, z.B. bei http://www.file-upload.net/ hochladen und den Link, den Du erhältst, uns hier mitteilen. Dann kann man sich das in Deiner Datei ansehen.

Die Daten in Deiner Datei kannst Du gegen Dummydaten tauschen. Nur die Beträge müsstest Du so belassen.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
hab´s selber gelöst


Vielen Dank für deine Hilfe
Coros

Gruß, CATY
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Caty,

und wo lag der Fehler? Wäre sicherlich sinnvoll auch für andere, die eventuell später mal diesen Beitrag lesen und das gleiche Problem wie Du haben.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
...