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

Per VBA Werte kopieren und nach Dialog eintragen

Per VBA Werte kopieren und nach Dialog eintragen
22.03.2016 14:11:21
tors7en
Hallo zusammen,
ich möchte mehrere Zellen wahlfrei markieren.
Dann in einem Dialog zwei Parameter abfragen.
Die markierten Werte sollen einer definierten Stelle (zwei Spalten weiter rechts, an der ersten freien Position) wieder eingefügt werden.
Zusätzlich soll jeweils rechts neben den eingefügten Spalten der im Dialog abgefragt Wert eingefügt werden.
Habe es fast, nur das Kopieren des Dialoges an die richtige Stelle fehlt mir noch.
Beispiel anbei.
https://www.herber.de/bbs/user/104534.xlsm
Vorgehen:
Markiere B3 & B5.
Eingabe im Dialog: R1 & 0101160820
Kopiere B3 und B5 nach D5 bis D6 und fülle „R1-0101160820“ in E5 bis E6.
Das ganz soll dynamisch sein.
Also markiere ich Zellen in Spalte B sollen diese nach D/E kopiert werden.
Markiere ich Zellen in Spalte E sollen diese nach G/H kopiert werden.
Hat jemand den finale Tip für mich?

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

Betreff
Datum
Anwender
Anzeige
AW: Per VBA Werte kopieren und nach Dialog eintragen
22.03.2016 14:17:36
tors7en
Das bereits realisierte Makro (CreateCharge) macht bisher folgendes:
Sub CreateCharge()
' Eingabe abfragen
Dim Eingabe1 As Variant
Dim Eingabe2 As Variant
Eingabe1 = Application.InputBox(prompt:="Art?", Title:="Art", Default:="X1", Type:=2)
Eingabe2 = Application.InputBox(prompt:="Datumskenner (TTMMJJHHMM)?", Title:="Datum", Default: _
="0101160820", Type:=2)
' ActiveSheet.Cells(10, 10).Value = "MB-" & Eingabe1 & "-" & Eingabe2
' Werte kopieren
Selection.Copy
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.End(xlUp).Select
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
End Sub

Anzeige
AW: Per VBA Werte kopieren und nach Dialog eintragen
22.03.2016 14:56:44
Steve
Hallo Torsten,
probier es bitte mal so:
Sub CreateCharge()
' Eingabe abfragen
Dim Eingabe1 As Variant
Dim Eingabe2 As Variant
Eingabe1 = Application.InputBox(prompt:="Art?", Title:="Art", Default:="X1", Type:=2)
Eingabe2 = Application.InputBox(prompt:="Datumskenner (TTMMJJHHMM)?", Title:="Datum", _
Default:="0101160820", Type:=2)
' ActiveSheet.Cells(10, 10).Value = "MB-" & Eingabe1 & "-" & Eingabe2
' Werte kopieren
Selection.Copy Destination:=Cells(Rows.Count, Selection.Column + 2).End(xlUp).Offset(1, 0)
Cells(Rows.Count, Selection.Column + 3).End(xlUp).Offset(1, 0).Resize(Selection.Count, 1) = _
Eingabe1 & " - " & Eingabe2
End Sub
Zunächst wird der zu Einfügeort (Destination) bestimmt nach folgendem Prinzip:
Cells(Rows.count, Spalte).End(xlUp)
Dabei nimmt er sich die letzte Zeile in der Spalte (hier Selection.Column +2) und geht von ihr bis zur letzten beschriebenen Zeile nach oben. Es soll aber die erste freie genommen werden, darum noch ein Offset(1,0) hinten ran.
Das gleiche nochmal zum Eintragen deiner Eingaben bloß für drei Spalten weiter rechts erfolgt in der Zeile darunter. Einziger Unterschied: Wir haben hier nicht mehrere Zellen kopiert, sondern tragen einen einzigen Wert ein, daher würde nur hinter der ersten Zelle die Eingabe stehen. Deshalb muss der Bereich vergrößert werden (Resize) auf die Anzahl der Zeilen der Selection.
lg Steve

Anzeige
AW: Per VBA Werte kopieren und nach Dialog eintragen
22.03.2016 15:01:45
Steve
Kleiner Nachtrag:
Falls du für deinen Datumskenner als Standardwert den aktuellen Zeitpunkt haben möchtest und nicht deinen fixen, würde das wie folgt funktionieren:
Default:=Format(Now(), "DDMMYYhhmm")

lg Steve

AW: Per VBA Werte kopieren und nach Dialog eintragen
22.03.2016 15:37:00
tors7en
Hallo Steve,
super!
Genau so brauchte ich das.
Auch der Tip für das Datum ist gut.
Und mit der Erklärung verstehe ich auch nun, warum und wie es im Detail funktioniert.
Klasse.
Vielen, vielen Dank.

336 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige