7.5k Aufrufe
Gefragt in Tabellenkalkulation von korfuweb Mitglied (949 Punkte)
Brauch mal wieder Hilfe von den VBA Profis hier!

Folgendes Problem:

Bestand ein Arbeitsblatt Namens „Aufmass“,
Ein Arbeitsblatt Namens „Leitungs_Nr“ .

Aus dem Arbeitsblatt „Aufmass“ sollen die Werte aus Zeile 2 (Zelle A-HZ) kopiert
werden und ins Arbeitsblatt „Leitung_Nr“ in eine Zeile (ab Zelle P) kopiert werden.

Bis hierher kein größeres Problem kann man ja kopieren und „Werte“ einfügen.

Jetzt kommt aber das Problem:

Das zu erstellende Makro muss wissen in welche Zeile er die Werte kopieren soll
???

Das heißt im Arbeitsblatt Aufmaß befindet sich in der Zelle C4 die Indexnr.
z.B. 1
Jetzt müßte das Makro folgende Aufgabe bewerkstelligen:

Nimm die „Werte“ aus Arbeitsblatt „Aufmaß“ Zeile 2 – Zelle A-HZ,
Nimm die Indexnr. In Zelle C4 addiere +3 (4) und kopiere die Werte in Arbeitsblatt
„Leitungs_Nr“ Zeile 4 an Zelle P

Ist so was mit Makroprogrammierung möglich ?

Für eure Hilfe wäre ich dankbar.

Gruß Volker

4 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Volker,

nachfolgendes Makro sollte dies erfüllen.
Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Kopieren()
With Sheets("Aufmaß")
.Range("A2:AZ2").Copy _
Sheets("Leitungs_Nr").Cells(.Range("C4") + 3, 16)
End With
End Sub
MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von korfuweb Mitglied (949 Punkte)
Hallo Oliver,
die Formel funktioniert in so weit super leider kopiert er den Inhalt der
Zellen, was Formeln sind! Ich möchte aber die "Ergebnisse" also die
Werte kopieren.

Gruß Volker
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Volker,

dann eben so:

Sub Kopieren()
With Sheets("Aufmaß")
.Range("A2:AZ2").Copy
Sheets("Leitungs_Nr").Cells(.Range("C4") + 3, 16).PasteSpecial Paste:=xlPasteValues
End With
End Sub

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von korfuweb Mitglied (949 Punkte)
Vielen Dank !

Perfekt.

Echt Klasse welche Genies sich hier rum treiben. Und die promte Antworten - ich bin begeistert.

Gruß Volker
...