Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel mit VBA
#1
Guten Abend zusammen,
ich brauche die Hilfe von VBA kennern ::D
ich habe folgendes vor.
Es gibt 2 Arbeitsblätter. Tabelle 1 und Tabelle 2.
In Tabelle 1 gibt es 4 Spalten kurz 1 2 3 4
In Tabelle 2 gibt es die selben. Folgendes ist der Plan. Tabelle 1 dient als Datenbank. Nun soll bei doppelklick auf einer Zelle in spalte 1 der Inhalt kopiert werden und in Tabelle 2 in Spalte 1 eingefügt werden. Das selbe für spalte 2 3 und 4 also jeweils spalte zu spalte. Hinzu kommen 2 Dinge.
1. In Tabelle 1 sind natürlich viele Zeilen in den jeweiligen spalten d.h. das Makro muss in jeder Zeile der jeweiligen Spalte funktionieren.
2. In Tabelle 2 muss der eingefügte Wert in der nächsten freien Zeile stehen und nicht den ersten Wert über schreiben. Um das Ganze ab zu runden ein kleines Beispiel.
Tabelle 1 spalte 1  1 Zeile Mais
                            2 Zeile Kartoffeln
                            8 Zeile Kraut
                          12 Zeile Gurken
Doppelklick auf Kartoffeln dann soll in Tabelle 2 in spalte 1 Zeile 1 Kartoffeln stehen
Doppelklick auf Kraut dann soll in Tabelle 2 spalte 1 Zeile 2 Kraut stehen
Doppelklick auf Mais dann soll in Tabelle 2 spalte 1 Zeile 3 Mais stehen
usw.
Das selbe dann auch für spalte 2 3 und 4
ich hoffe ihr versteht alles und könnt mir helfen Angel 
Schönen Abend und Gute nacht
moe
Antworten Top
#2
Hallo

das gehört hinters Tabellenblatt1


Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
   Dim lngZiel As Long
   If Not Intersect(Target, Columns("A:D")) Is Nothing Then
       Cancel = True
       With Sheets("Tabelle2")
           lngZiel = .Cells(.Rows.Count, Target.Column).End(xlUp).Row + 1
           .Cells(lngZiel, Target.Column) = Target.Value
       End With
   End If
End Sub

MfG Tom
Antworten Top
#3
Hallo,

Du hast nicht geschrieben, was dann danach mit der Kartoffel passieren soll. Blush 

Tom war zwar früher, aber hier trotzdem eine zusätzliche Variante, welche auch nach Rom führt:


Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 Select Case Target.Column
   Case 1 To 4 And Target.Row > 1
   Cancel = True
   Sheets("Tabelle2").Cells(Sheets("Tabelle2").Cells(Rows.Count, Target.Column).End(xlUp).Row + 1, Target.Column).Value = Target.Value
 End Select
End Sub
Gruß Atilla
Antworten Top
#4
Herzlichen Guten Abend zusammen,
Ihr seid wirklich spitze funktioniert einwandfrei. Nur leider jagt ein Problem das nächste. Folgendes ist nun der Stand. Es geht um einen Kochplan. Ich kann jetzt aus der Datenbank von Tabelle 1 die Zutaten in Tabelle 2 einfügen. Klappt super. Jetzt habe ich auf Blatt2 Hilfszellen, direkt neben den Zutaten, mit einer Dropdown Liste versehen. Montag bis Sonntag. Kurz zu erläuterung  Spalte 1 Mais Spalte 2 Montag (Ausgewählt über dropdown). Auf Tabellenblatt 3 Soll der Plan Montag bis Sonntag stehen. Montag ist Spalte 1. Da steht in der ersten Zeile "=WENN(Tabelle2!B2="Montag";Tabelle2!A2;)" Funktioniert auch ganz gut. Nun kommt das Problem. Ich brauche die Zutat die in Tabelle A2 steht am Montag und z.B. am Mittwoch. Nun habe ich ja 2 Möglichkeiten Ich Füge die Zutat ein 2 mal hinzu auf Tabelle 2 und wähle Mittwoch aus das ist aber äußerst umständlich, oder ich änder in B2 von Montag auf Mittwoch. Bei der 2 Variante geht mir aber dann bei Montag die Zutat flöten, weil der Bezug fehlt.
Nun die Frage. Gibt es eine Möglichkeit, dass ich Montag anwähle, die Zutat bei Montag steht. Den Tag von der Zutat auf Mittwoch ändere,also ohne die Zutat ein 2 mal einzufügen und denn die Zutaten bei Montag und Mittwoch stehen habe? Wenn das irgendwie geht müssten dann die Zutaten auch untereinander stehen also, wenn ich am Mittwoch z.B. 3 Zutaten habe, dass dann nicht der erste Wert überschrieben wird. :16:
Ich hoffe ihr versteht das und könnt mir genau so super helfen wie oben.
Lg
Antworten Top
#5
Hallo moe,

also, die Zutaten für die einzelnen Tage nacheinander einzufügen ist ja nicht verkehrt. Und dass Da welche für Montag sind und welche für Mittwoch, kann Excel ja auch nicht von alleine entscheiden, das musst Du schon mitteilen. Dazwischen fehlt ja auch noch der Dienstag, auch nicht einfach zu entscheiden ...

Den Tag könntest Du doch auch per Doppelklick übernehmen. Oder, wenn die Tage nebeneinander stehen und darunter die Zutaten, könntest Du in Abhängigkeit von der Tagesauswahl mal die Spalte 1 für Montag füllen, Dienstag Spalte 2 usw.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste