Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1596to1600
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

Bestehenden Code erweitern

Bestehenden Code erweitern
20.12.2017 09:40:27
Spiller
Hallo zusammen.
Ich heiße Daniel und habe mich gerade hier angemeldet, weil ich kurz vorm verzweifeln bin. :(
Ich möchte einen bestehenden Code erweitern, allerdings kenne ich mich mit VBA absolut nicht aus. Muss auch ehrlich zugeben, dass ich mir das leichter vorgestellt habe. Ich versuche seit zwei Tagen das selbst hinzubekommen, aber ich gebe es jetzt auf.
Es ist so, dass ich in dem Sheet 'Rechnung' in der Spalte B eine Artikelnummer eingebe, diese dann mit STRG+X von dem 'Artikel' Sheet einfüge. Also Artikelbeschreibung, Preis, usw.
Jetzt möchte ich aber das 'Artikel' Sheet um eine Spalte (G) erweitern wo die EK Preise eingetragen werden. Den EK Preis möchte ich dann in das 'Rechnung' Sheet in Spalte K einfügen. Spalte I und J bleiben frei.
Hier mal der bestehende Code:
'
' Art_Einf
' fügt einen Artikel aus der Artikeltabelle in das Rechnungsformular ein
'
'

Sub Art_Einf()
Set AktPosition = Application.ActiveCell
AktPosition.Select
Suchwort = Selection
Sheets("Artikel").Select
Range("A:A").Select
Selection.Find(What:=Suchwort, After:= _
ActiveCell, LookIn:=xlValues, LookAt:=xlWhole, _
SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False).Select
Selection.Range("B1:F1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Rechnung").Select
Selection.Range("C1").Select
ActiveSheet.Paste
AktPosition.Select
Selection.Range("B1").Select
End Sub
Vielleicht kann mir ja jemand weiterhelfen? Mir ist das leider zu umständlich.
Danke schonmal.
Gruß, Daniel

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestehenden Code erweitern
20.12.2017 11:09:33
EtoPHG
Hallo Daniel,
Was du genau machen willst, erschliesst sich weder aus dem Code, noch aus deinen Ausführungen.
Als Tipp für die Zukunft: Stelle den Helfern wenn immer möglich eine Beispielmappe (mit ggf. anonymisertem, verkleinertem, aber repräsentativen Datenstrukturen) zur Verfügung.
In VBA ist .Select so ziemlich der überflüssigste Befehl. Lies dazu mal: Wer selektiert denn da?
Hier ist ein Code, der auf reinen Vermutungen aus deiner Anfrage beruht:
Sub Art_Einf()
Dim lRow As Long
With Worksheets("Artikel")
On Error Resume Next
lRow = WorksheetFunction.Match(ActiveCell, .Columns(1), 0)
On Error GoTo 0
If lRow > 0 Then
.Range(.Cells(lRow, 2), .Cells(lRow, 5)).Copy ActiveCell.Offset(, 2)
.Cells(lRow, 6).Copy ActiveCell.Offset(, 10)
Else
MsgBox "Artikel " & ActiveCell & " nicht gefunden!", vbExclamation, "Fehler!"
ActiveCell.Offset(, 2).Resize(1, 10).ClearContents
End If
End With
End Sub
Gruess Hansueli
Anzeige
AW: Bestehenden Code erweitern
20.12.2017 13:17:37
Spiller
Danke Hansueli für die Hinweise und den Link. Da hast du natürlich recht, dass ein paar Zeilen nicht unbedingt aussagekräftig sind. Werde mir auch den Link über das Selektieren natürlich noch genauer durchlesen. Aber wie gesagt beschäftige ich mich jetzt erst seit zwei Tagen mit VBA und verstehe dadurch noch sehr oft Bahnhof.
Ich versuche nochmal meine Lage besser zu erklären.
Hier das Rechnungsformular wo die Daten eingefügt werden sollten.
http://up.picr.de/31286639by.jpg
Hier das Sheet mit den Artikeln.
http://up.picr.de/31286643ll.jpg
Nun möchte ich das Artikel Sheet mit einer Spalte für EK Preise ergänzen.
http://up.picr.de/31286647ev.jpg
Ich gebe in Spalte B die Artikelnummer ein und rufe mit Strg+X den Makrobefehl auf. Dann wird mir der Datensatz eingefügt. Jetzt kommt aber noch dazu, dass der EK Preis in der Spalte K stehen sollte.
http://up.picr.de/31286652sg.jpg
Die Spalten I und J bleiben frei. In I kann ich einen Rabatt eintragen und wenn ich in Spalte C eine Menge eingebe, errechnet sich in Spalte J der Gesamtbetrag. Aber das nur am Rande.
Hier noch die dazugehörige Excel Datei:

Die Datei https://www.herber.de/bbs/user/118440.xls wurde aus Datenschutzgründen gelöscht


Falls es keine Umstände macht, wäre es nett wenn man mir vielleicht ganz grob erklären könnte, wie sich der Code zusammensetzt? Hätte schon versucht den Ursprungscode zu zerlegen um mir vielleicht einen Reim daraus machen zu können, wie der aufgebaut ist. Aber bei einigen Sachen steig' ich leider noch nicht dahinter.
Gruß, Daniel
Anzeige
AW: Bestehenden Code erweitern
20.12.2017 14:04:54
EtoPHG
Hallo Daniel,
Ich weiss nicht, wieso du bei deinem Level mit VBA rumbasteln willst.
Hier ist Deine Datei zurück mal mit Standard Excelformeln (für die erste Rechnungseite) zurück.
Artikelnummer kann mit Dropdown ausgewählt werden, den Rest erledigen Formeln.
Woher ich den EK bekommen soll weiss ich nicht, da keine Daten in deinem Beispiel dafür vorhanden sind. Aber du kannst das gleiche Prinzip der Formeln anwenden, sofern die EK-Tabelle die Artikelnr-Schlüssel die gleiche Reihenfolge haben, wie im Artikel-Tabellenblatt.
Gruess Hansueli
Anzeige
AW: Bestehenden Code erweitern
20.12.2017 14:37:41
Spiller
Das mit meinem VBA Level ist ja das Problem. :D Hätte ja gehofft, dass ich einfach nur ein wenig was an dem bestehenden Code ergänzen brauche. War leider nicht so. MS Office ist jetzt nicht so mein Hauptaufgabengebiet. Bin eigentlich in der CAD unterwegs. Allplan, Lumion, usw.
Der EK Preis soll in die Gelb markierten Felder rein. Hatte nur noch keine Preise in der Artikelliste eingefügt.
Aber mit Dropdown ist das auch cool. Danke Dir vielmals dafür. Die Formeln konnte ich mir zumindest so anpassen, dass es jetzt so angezeigt wird wie ich es mir vorgestellt habe. :)
Danke nochmal Hansueli
Gruß, Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige