Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema RefEdit
BildScreenshot zu RefEdit RefEdit-Seite mit Beispielarbeitsmappe aufrufen

Bestimmten Bereich anhand Zeilenabgabe kopieren


Betrifft: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: Flip
Geschrieben am: 19.09.2019 07:29:20

Hallo Community!

Ihr könnt mir bestimmt weiter helfen.

Bin kompletter Anfänger was das Code schreiben betrifft. Ich hoffe ihr könnt mir weiter helfen.

Ich habe eine Tabelle in der ab E3-AE... Werte eingetragen sind (nach unten wird stetig erweitert). In A3-A... ist dazu eine fortlaufende Nummer angeführt.
Ich bräuchte jetzt ein Makro welches mir über einen Schaltfläche nach Angabe der fortlaufenden Nummer z.B 0015 nur Bereich E17-P17 in die Zwischenablage kopiert.
Zeile 1-2 sind nur Informationen
Die Frage ist jetzt ob das funktioniert mit der fortlaufenden Nummer? Oder muss man das über die Zeilennummer in Excel abfragen? In dem Beispiel 17. Wäre auch kein Problem für die Handhabung aber ich bekomme das mit der Abfrage einfach nicht hin.
Button und Inputbox ist nicht das Problem, aber mit dem Bereich hab ich meine Probleme

Der Ablauf sollte ungefähr wie folgt aussehen:
1: Button drücken
2: InputBox - "Welche fortlaufende Nummer soll kopiert werden?
3: fortlaufende Nummer der zu kopierenden Zeile aus A angeben
4: Bereich E-P aus der genannten Zeile kopieren.

Könnt ihr mir dabei weiter helfen?
Vielen Dank im Voraus!!

FG Flip


  

Betrifft: Frage...
von: 1713787.html
Geschrieben am: 19.09.2019 08:52:10

Hallo Flip,

...was willst du anschliessend mit den Daten in der Zwischenablage machen? In ein anderes Programm einfuegen oder weiter in Excel? Ich frage deshalb, weil es 2 verschiedene Zwischenablagen gibt. Die interne fuer Excel und die Windows Zwischenablage. In welcher haettest du die Daten gerne?
Solltest du die Daten in ein anderes Excel Sheet einfuegen wollen, brauchst du auch die Zwischenablage nicht zwingend.

Gruss Torsten

  

Betrifft: AW: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: 1713791.html
Geschrieben am: 19.09.2019 09:06:53

Hallo Flip,

ungefähr so:

Option Explicit
 
 Private Sub Workbook_Open()
   Dim rngZelle As Range
   Dim strSuchwort As String
 
     strSuchwort = InputBox("Welches Suchwort?", "Suchwort eingeben")
         For Each rngZelle In Worksheets("Tabelle1").Range("A:A")
               If rngZelle = strSuchwort Then
                 rngZelle.Range("E1:P1").Copy _
                 Sheets("Tabelle2").Range("E" & Sheets("Tabelle2").Cells(Rows.Count, 2).End(xlUp) _
 .Row)
                 Exit Sub
               End If
         Next rngZelle
 End Sub
 
 
Es wird In Tabelle 1 Spalte A nach dem Begriff gesucht und in Tabelle 2 wird Bereich E:P auch in E:P eingefügt.
Wenn du willst, dass die erste gefundene Zeile in Tabelle2 Zeile 2 geschrieben wird, dann 'End(xlUp.Row +1)


Gruß Pierre
  

Betrifft: AW: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: 1713815.html
Geschrieben am: 19.09.2019 09:59:34

Sorry, vergiss das wieder.
Irgendwas habe ich da verbastelt eben...

  

Betrifft: AW: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: 1713797.html
Geschrieben am: 19.09.2019 09:29:07

Hallo nochmal Flip,

hier mal 2 Moeglichkeiten mit der Inputbox-Abfrage nach Klick auf einen CommandButton.
Da ich nicht weiss, was du nach dem Kopieren machen willst, geht der Code nur bis zum Kopierbefehl.
1. Moeglichkeit: Frage nach der Zeilennummer, die kopiert werden soll.

Option Explicit

Private Sub CommandButton1_Click()

Dim strInput As String
Dim lngLetzte As Long

1: strInput = InputBox("Welche Zeile soll kopiert werden?", "Zeilennummer")
If StrPtr(strInput) = 0 Then Exit Sub
If Not IsNumeric(strInput) Then
    MsgBox "Bitte nur Zahlen eingeben!"
    GoTo 1
Else
    ThisWorkbook.Sheets("Tabelle1").Range("E" & strInput & ":P" & strInput).Copy
End If

End Sub

2. Moeglichkeit: Hier wird der User nur aufgefordert, in die Zeile zu klicken, die kopiert werden soll.
Option Explicit

Private Sub CommandButton1_Click()

Dim rng As Range
Dim Zeile As Long

On Error Resume Next
Set rng = Application.InputBox(Title:="Zeile", Prompt:="Bitte in die zu kopierende Zeile  _
klicken", Type:=8)
On Error GoTo 0

If rng Is Nothing Then Exit Sub
  
Set rng = rng.Cells(1, 1)
Zeile = rng.Row

ThisWorkbook.Sheets("Tabelle1").Range("E" & Zeile & ":P" & Zeile).Copy

End Sub

Den Tabellennamen musst du jeweils noch anpassen, wenn noetig.

Gruss Torsten
  

Betrifft: AW: Frage...
von: 1713914.html
Geschrieben am: 19.09.2019 14:41:13

Ja die Daten werden in ein anderes Programm eingefügt (M-Print von Weidmüller)
Dort kann man zwar auch eine Excel Tabelle aufrufen und die Werte eintragen aber ob dazu eine Schnittstelle möglich ist weiß ich nicht. Im Prinzip sollen mit den Werten Leistungsschilder ausgedruckt werden. Die Werte aus E-P sind auf der Vorlage von Seite 1 einzutragen und die Werte von Q-AE auf Seite 2. Ich hätte dann eben 2 Buttons mit erstellt. Denke nicht das es gleich aus dem Excel mit einem Button als Hyperlink funktioniert. Oder doch??

  

Betrifft: AW: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: 1713919.html
Geschrieben am: 19.09.2019 14:44:59

Was natürlich aus gehen würde. Wenn man über eine Userform und ein Listenfeld die fortlaufende Nummer anwählt und dann entweder auf "Seite 1" oder "Seite 2" kopieren klickt. Aber soweit reicht mein VBA Wissen leider nicht

  

Betrifft: AW: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: 1713929.html
Geschrieben am: 19.09.2019 15:11:53

was ist mit meinen beiden Vorschlaegen?

  

Betrifft: AW: Bestimmten Bereich anhand Zeilenabgabe kopieren
von: 1713940.html
Geschrieben am: 19.09.2019 15:48:08

Ohhh Sorry hab die Codes erst jetzt gesehen. Ja so ungefähr hätte ich mir das vorgestellt.
Beim zweiten bekomme ich einen Syntaxfehler bei

müsste bei beiden jetzt dann noch den Code kopieren und einen 2 Button machen für den 2 Bereich.
Vielen Dank schonmal für dein super schnelle Hilfe
Super wäre vl wirklich über die Userform (das bekomm ich alles hin) wenn ich die beiden Buttons dort einbette. Wie würde das nur mit dem Listenfeld aussehen? Da weiß ich nicht wie ich mich auf die fortlaufende Nummer in Spalte A beziehe.

Vielen Vielen Dank Torsten