Office: (Office 365) Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren

Helfe beim Thema Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Ich versuche gerade meine Bestellschein-Tabelle zu überarbeiten und würde gerne meine Makros ändern. Ich habe eine Beispieltabelle eingefügt, dort... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Andreas7611, 28. Oktober 2025.

  1. Andreas7611 Erfahrener User

    Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren


    Ich versuche gerade meine Bestellschein-Tabelle zu überarbeiten und würde gerne meine Makros ändern.

    Ich habe eine Beispieltabelle eingefügt, dort sind verschiedene Frachten aufgeführt und können zur Berechnung dienen. Die Tabelle ist sehr umfangreich, da sie früher andere Frachtunternehmen aufgeführt hat, aber sind halt immer noch drin.

    Aktuell sind nur drei Frachtunternehmen relevant. Ich habe das mal in der Beispieltabelle kenntlich gemacht:
    Fracht 1: Spalte G und H
    Fracht 2: Spalte G und I
    Fracht 3: Spalte N und O

    Aktuell läuft es so ab, dass ich das Feld mit der Postleitzahl anklicke und dann auf eine Schaltfläche mit der gewünschten Frachtart (wie in der Tabelle Fracht 1-3) klicke, dann wird die komplette Zeile in eine andere Zeile kopiert und von dort aus wird mittels einer Formel die Postleitzahl, Ort, Kosten übernommen.
    Was hier nicht so schön ist: In den relevanten Eingabefeldern steht dann eine Formel (z.B. =N1). Wenn nun aber die Rechnungs- und Lieferadresse abweicht (was selten ist, aber vorkommt), kann man zwar die Formel überschreiben, aber ist halt nicht so schön.

    Deswegen frage ich mich gerade, ob man nicht auch ein Makro oder ein VB Code machen kann, der alles direkt in die Eingabefelder kopiert und in etwa so arbeitet:
    (hier z.B. für Fracht1)
    1. Ermittle die aktiv gewählte Zelle (also die Postleitzahl)
    2. Schreibe nun den Wert in dieser Zeile vom Feld PLZ in Feld C18 und C24.
    3. Schreibe nun den Wert in Dieser Zeile vom Feld Ort in C19 und C24
    4. Schreibe nun den Wert in Dieser Zeile vom Feld Maut in Feld F18
    5. Schreibe nun den Wert in Dieser Zeile vom Feld Fracht in Feld F19
    6. Schreibe nun in das Feld F22 die Frachtart "1"
    7. Schreibe in das Feld F23 "Eigenes Fahrzeug"
    8. Verbleibe in dem ausgewählten PLZ-Feld (soll bewirken, dass man nacheinander die verschiedenen Frachten auswählen kann um dem Kunden schnell mitzuteilen, wie sich die Kosten verändern)

    Die Frachtart ist dahingehend wichtig, dass z.B. manche Fuhrunternehmer die Ware auf Paletten brauchen, die dann automatisch mitberechnet werden sollen. Das kommt dann aber erst im nächsten Schritt und kann ich voraussichtlich mit einfachen "wenn dann" Formeln lösen. Bzw. wollte ich gerne Kontrollkästchen (Wahr/Falsch) einführen, wo man bei Bedarf auch Manuell Posten einfügen kann. Dazu müsste dann in eine Zelle nur "Wahr" eingefügt werden, ich denk das bekomme ich hin, wenn es das Grundgerüst gibt (Ich kann es aber noch in die Beispieltabelle einfügen, das die Fracht 3 immer mit Paletten gemacht werden muß).

    Vielleicht kann mir hierbei ja jemand zur Hand gehen, wie das am besten zu lösen ist, weil ich von VBA wenig bis gar keine Ahnung habe.

    Ferner würde mich gerade interessieren, ob man sich irgendwie anzeigen lassen kann, welche Codeblöcke in der aktuellen Arbeitsmappe irgendwo in der Benutzung sind und welche nicht benutzt werden, da ich im Laufe der Zeit sehr viel herumprobiert habe und möglicherweise den ein oder anderen Codeblock gar nicht mehr nutze. Wenn nicht muß ich suchen, eigentlich habe ich sie ganz gut benannt.

    Vielen Dank
     
    Andreas7611, 28. Oktober 2025
    #1
  2. Klaus-Dieter Erfahrener User
    Hallo Andreas,

    du schreibst da etwas von Codeblöcken, hast aber eine *.xlsx-Datei hochgeladen, das gibt es keinen Code.
     
    Klaus-Dieter, 28. Oktober 2025
    #2
  3. Andreas7611 Erfahrener User
    Es gibt ja auch noch keinen Code. Den suche ich ja gerade.
    Aber richtig. Dann müsste es als *.xlsm gespeichert werden.
     
  4. R J
    R J hat Ahnung

    Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren

    Moin,

    da das sehr wahrscheinlich nicht die Endversion sein kann (denn die Ergebnisse unterhalb der relevanten Daten zu schreiben ist suboptimal, was, wenn Du 20 Orte hinzufügen willst?) mal nur ein Beispielcode.

    Zunächst würde ich den Bereich mit den relevanten Daten, also von A5 bis T10 als Tabelle formatieren. Ich hab der den Namen tblFrachtgeb verpasst.
    Dann kopierst Du ins Modul des Arbeitsblattes folgenden Code:

    Code:
    Option Explicit
    Dim aktZeile As Long
    
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Target.Count = 1 And Not Intersect(Target, Range("tblFrachtgeb")) Is Nothing Then aktZeile = Target.Row Else aktZeile = 0
    End Sub
    
    Sub Fracht1()
    If aktZeile > 0 Then
        Range("C18") = Range("B" & aktZeile)
        Range("C19") = Range("C" & aktZeile)
        '....usw....
    End If
    End Sub
    und ergänzt den entsprechend. Für Fracht 2 und Fracht 3 müssen die Prozeduren analog zu Fracht 1 noch erstellt werden.
    Dann klickst Du mit der rechten Maustaste auf die jeweiligen Buttons und weist denen die passenden Makros zu.
     
  5. Andreas7611 Erfahrener User
    Danke für die Info.
    Ich kämpfe mich gerade durch, aber der Kern funktioniert schon wie ich das will. Ist ein wenig "Try and Error", aber langsam verstehe ich das Prinzip :)

    Mein Code (hier nur die PLZ und Adresse in jeweils 2 Felder schreiben) sieht so aus:
    Dieser ergänzt noch, ob ich eine Postleitzahl ausgewählt habe oder mich in einer falschen Spalte befinde. Ist aber noch nicht ganz astrein, da er sich nur auf eine Spalte bezieht und müsste sich eigentlich auf einen Bereich Ab Zeile 27 (bis villeicht 50) beziehen, aber das ist aktuell noch nicht wichtig.

    Code:
    Sub Kipperfracht()
    'Kopiert die Fracht für Kipper Fahrt (einzeln
    'Vorbereitung Variable
    Dim aktZelle As Range
    
    'Aktuelle Zelle Speichern (um später hierher zurückzukehren)
    Set aktZelle = ActiveCell
    
    'Prüfen, ob die aktuelle in Spalte B liegt
    If aktZelle.Column = 2 Then
    
    'Beginn Kipperfracht Eintragen
    ' Adresse in PLZ und Ort Kund&Baustelle eintragen
    
    Set ZielzellePLZ = ThisWorkbook.Sheets("Eingabe").Range("C7")
    Set ZielzellePLZ = ThisWorkbook.Sheets("Eingabe").Range("C13")
    
    Set ZielzelleORT = ThisWorkbook.Sheets("Eingabe").Range("C8")
    Set ZielzelleORT = ThisWorkbook.Sheets("Eingabe").Range("C14")
    
    ZielzellePLZ.Value = aktZelle.Offset(0, 0).Value
    ZielzelleORT.Value = aktZelle.Offset(0, 1).Value
    
    
       'Zur Ursprünglichen Zelle zurückspringen
       aktZelle.Select
       'Wenn nicht Zeile B ausgewählt wurde, wird diese Meldung ausgegeben
       Else
       MsgBox "Bitte zuerst die korrekte Postleitzahl auswählen!", vbExclamation
       End If
    End Sub
     
  6. R J
    R J hat Ahnung
    ...das hat zwar bestenfalls ansatzweise noch was mit den ursprünglichen Anforderungen zu tun... aber was solls.... ist ja Deine Baustelle.

    Das hier:
    Code:
    Set ZielzellePLZ = ThisWorkbook.Sheets("Eingabe").Range("C7")
    Set ZielzellePLZ = ThisWorkbook.Sheets("Eingabe").Range("C13")
    ist Mumpitz. ZielzellePLZ ist danach immer C13. Gleiches gilt für die anderen gesetteten Variablen.
     
  7. Andreas7611 Erfahrener User
    Ja, habe ich auch schon herausgefunden :D

    Die Anfrage war auch eher "Grundlegend". Um das Verständnis zu erlangen, wie ich das ganze weiter ausarbeiten kann.
    An dem von dir angezeigten Fehler merke ich auch, dass es sicherlich eine eher komplizierte Lösung ist, Aber sie Funktioniert und ich verstehe sie - und das ist erstmal die Hauptsache.
    Geht bestimmt auch eleganter. Vielleicht kann man auch mehrere Zielzellen bestimmen. Mal gleich auf die Suche machen :D

    Edit: Hab schon.. einfach nen Komma.. :D
     
    Zuletzt bearbeitet: 7. November 2025 um 12:50 Uhr
  8. R J
    R J hat Ahnung

    Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren

    Nee...andere Variablennamen... was willst Du mit einem Komma? Das hilft nur bei der Deklaration...
    wobei die Zielzellen im Prinzip nicht mal gesettet werden müssen. Einfacher als:

    Dim ZielPLZ as Range
    Set ZielPLZ = Range("C4")
    ZielPLZ = "12345"

    wäre doch, die Zielzelle direkt anzusprechen:

    Range("C4") = "12345"

    Orientiere Dich doch einfach mal an meinem 1. geposteten Beispiel....
     
    Zuletzt bearbeitet: 7. November 2025 um 13:42 Uhr
Thema:

Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren

Die Seite wird geladen...
  1. Bestimmte Zellen auf Knopfdruck in andere Zellen kopieren - Similar Threads - Bestimmte Zellen Knopfdruck

  2. Excel Blattschutz & Power Query – bestimmte Zellen freigeben, aber Aktualisierung weiterhin erlauben

    in Microsoft Excel Hilfe
    Excel Blattschutz & Power Query – bestimmte Zellen freigeben, aber Aktualisierung weiterhin erlauben: Hallo miteinander, ich experimentiere gerade mit dem Blattschutz in Excel und bin auf ein paar Herausforderungen gestoßen, bei denen ich eure Unterstützung brauchen könnte. 1) Funktioniert schon...
  3. Ausgewählte Zelle auf einen bestimmten Platz springen lassen.

    in Microsoft Excel Hilfe
    Ausgewählte Zelle auf einen bestimmten Platz springen lassen.: Hallo mal wieder nach langer Zeit, vorab: ja ich habe gesucht, aber ich weiß nicht, wie ich mein Problem benennen soll. Folgendes Szenario: Eine Anwesenheitstabelle, zehn Namen, das Ganze Jahr...
  4. Nur markierte Zellen kopieren und wieder einfügen

    in Microsoft Excel Hilfe
    Nur markierte Zellen kopieren und wieder einfügen: Ich habe z.B. in einer Excelliste untereinander folgendes stehen: 1 2 3 4 5 Ich markiere mir nun anhand folgender Tastenkombination (Strg gedrückt halten) alle Zellen, außer Zelle 2. Nun...
  5. Bestimmte Zeichen aus zwei zellen verbinden

    in Microsoft Excel Hilfe
    Bestimmte Zeichen aus zwei zellen verbinden: Hallo euch allen, Ich muss die erste 3 Zeichen der Zelle A1 und die ersten 2 Zeichen der Zelle A2 in der Zelle A3 ausgeben. Als beispiel: In Zelle A1 steht: Marcel, in der Zelle A2 steht Kummer...
  6. Excel Summe bilden wenn bestimmtes Wort und Zahl in eine Zelle vorhanden

    in Microsoft Excel Hilfe
    Excel Summe bilden wenn bestimmtes Wort und Zahl in eine Zelle vorhanden: Hallo liebe Gemeinde, ich habe ein Problem. Ich möchte eine Summe bilden, wenn ein bestimmtes Wort in der Zelle vorhanden ist (die Zahl für die Summe ist ebenfalls in dieser Zelle): jede Zeile...
  7. Zeilen löschen wenn eine Zelle der Zeile einen bestimmten Inhalt hat

    in Microsoft Excel Hilfe
    Zeilen löschen wenn eine Zelle der Zeile einen bestimmten Inhalt hat: Hallo, ich brauche mal wieder eure Hilfe. Für die beschriebene Aufgabe benutze ich folgenden Code der soweit auch gut funktioniert: Code: Sub ZeileLöschen() Dim Bereich As Range Dim Zelle As...
  8. Bestimmte Ziffern in Zelle entfernen

    in Microsoft Excel Hilfe
    Bestimmte Ziffern in Zelle entfernen: Hallo zusammen, Ich habe z.B. in meiner Spalte A/ Zelle 146 folgendes stehen "P-100-301783-10001". Ich möchte gerne in Spalte B/ Zelle 146 den gleichen Text von Spalte A/ Zelle 146 kopieren und...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden