Hallo zusammen,
ich bin leider ein absoluter VBA-Neuling, der sich anfangs mehr zugetraut hat und nun sich aber die Haare am ausraufen ist.
Und zwar stehe ich vor folgender Aufgabe:
Ich habe eine vorgegebene Tabelle, 5 Spalten (A=Workcenter, B=Bestellmenge, C=Einheit, D=Artikelnummer,E=Beschreibung)
Nun soll der Mitarbeiter NUR die Bestellmenge eingeben können, in Form von Zahlen <1. Hat er dies getan, soll er eine Schaltfläche anklicken, welche mit einem Makro verknüpft ist.
Und genau hier ist mein Problem.
Dieses Makro soll
1. Ein neues Tabellenblatt öffnen (nennen wir es "komprimierte Bestelliste"
2.Die Tabelle nach der Bestellmenge filter und dann nur die Zeilen(mit allen 5 Spalten) in "komprimierte Bestellliste" ausgeben, wo ein Wert <1 eingegeben wurde.
3.Dieses Tabellenblatt "komprimierte Bestellliste" als email an eine feste emailadresse versenden
4. Danach alles wieder zurück setzen.
Ich hoffe es ist einigermaßen deutlich geworden was ich meine.
Nun hab ich schon recherchiert und bin auf folgende makros gestoßen:
Sub Sortier2()
Dim Kriterium As String
Kriterium = InputBox("Bitte den zu Filternden Begriff eingeben", "Eingabefenster")
Range("A3").Select
ActiveWindow.ScrollRow = 810
Range("A3:K834").Select
Selection.Sort Key1:=Range("I4"), Order1:=xlAscending, Key2:=Range("B4") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom
Range("A3").Select
Selection.AutoFilter Field:=9, Criteria1:=Kriterium, Operator:=xlAnd
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
:=True
End Sub
--> dieses druckt allerdings und setzt mir die tabelle nicht zurück
Sub email()
Application.Dialogs(xlDialogSendMail).Show "mymail"
End Sub
--> dieses klappt gut, aber ist halt nur die email und ich hätte das gerne in einem schritt
Falls jemand eine Idee hat, wäre ich unendlich dankbar.
Also in diesem Sinne, vielen vielen Dank im Voraus!!
Liebe Grüße,
eine verzweifelnde Praktikantin