VBA Code kopieren?

... komplette Frage anzeigen

4 Antworten

Wenn die Tabellenblätter genau so heißen, wie die auszuwählenden Inhalte in D5, dann reicht eine Zeile Code:

Sheets(Range("D5").Value).Range("A3").Value = Range("A3").Value

Wenn die Namen nicht direkt übereinstimmen, kannst Du in etwa so vorgehen:



Dim tabellenblatt As String 'beliebige Variable für die Tabellenblätter
Select Case Range("D5").Value
Case "Lisa": tabellenblatt = "Lisas Blatt"
Case "Ben": tabellenblatt = "Bens Blatt"
End Select
Sheets(tabellenblatt).Range("A3").Value = Sheets("Tabelle1").Range("A3").Value

Tabelle1 sollte dann der konkrete Name der Eingabetabelle sein.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von rado66
20.04.2016, 21:14

Vielen Dank an alle die mir geantwortet haben. Tut mir leid das ich mich erst jetzt melde, ich war berufluch unterwegs.

Ich habe mich für Variante :

Sheets(Range("D5").Value).Range("A3").Value = Range("A3").Value

entschieden. Sehr einfach und genial.

0

Dafür gibt es doch den Makrorekorder.

Zunächst musst du den Namen in einer Variablen speichern sowie den Wert kopieren:

Dim name as String
Dim wert as String
name = Cells(5, 4) 'koennte auch anders herum sein...
wert = Cells(3, 1) '(die Zahlen)

Dann einfach das entsprechende Blatt aufrufen und dort hineinkopieren...

Die Befehle weiß ich gerade nicht auswendig und ich kann auch nicht nachschauen, aber da wird dir der Makrorekorder weiterhelfen...

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von rado66
20.04.2016, 21:15

Vielen Dank an alle die mir geantwortet haben. Tut mir leid das ich mich erst jetzt melde, ich war berufluch unterwegs.

Ich habe mich für Variante :

Sheets(Range("D5").Value).Range("A3").Value = Range("A3").Value

entschieden. Sehr einfach und genial.

0

Es ist schon recht spät, aber ich versuche mal ein paar Denkanstöße zu liefern.

Ist dein Dropdownmenü überhaupt eine Zelle, oder nur ein
ActiveX-Steuerelement, das auf die Größe der Zelle skaliert ist? In dem
Fall musst du den Wert aus dem Steuerelement auslesen.

Zum Kopieren auf ein neues Blatt:

Dim name As String

'Hier irgendwie den Namen aus der Dropdownliste der Variable "name" zuweisen

Set Quelltab = ActiveWorkbook.Worksheets("Datenübergane")
Set Zieltab = ActiveWorkbook.Worksheets(name)

'Kopiere Wert vom Quelltab in den Zieltab:

Zieltab.Cells(1, 3).Value = Quelltab.Cells(1, 3).Value

Der Code von mir übernimmt nur die Werte, bei der Formatierung musst du diese zusätzlich mitkopieren (Google hilft hier).

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von rado66
20.04.2016, 21:15

Vielen Dank an alle die mir geantwortet haben. Tut mir leid das ich mich erst jetzt melde, ich war berufluch unterwegs.

Ich habe mich für Variante :

Sheets(Range("D5").Value).Range("A3").Value = Range("A3").Value

entschieden. Sehr einfach und genial.

0

anonymos geht wohl davon aus, dass du nicht VBA programmieren kannst. ohne kenntnisse kommst du auch mit dem recorder nicht weit.

und irgendein code, der auf dein problem zugeschnitten ist wirst du so nicht finden.

oder ich hab dein problem nicht verstanden.

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?