Herbers Excel-Forum - das Archiv

Kopien an veerschiedenen Stellen mit Makro

Bild

Betrifft: Kopien an veerschiedenen Stellen mit Makro
von: stimmt

Geschrieben am: 17.12.2006 11:55:34
Hallo,
ich habe ein Problem, Kopien aus einer Originaltabelle in verschiedene Zellen einer anderen Tabelle zu erzeugen.
Ich schätze, dafür braucht man VBA-Kenntnisse, die ich aber nicht habe.
In der Datei gibt es eine Lies mich Seite, in der das Problem noch einmal beschreiben ist.
Es wäre toll, wenn jemand das lösen kann, da es mir sehr viel Arbeit ersparen würde.
Danke
Manfred
https://www.herber.de/bbs/user/39060.xls
Bild

Betrifft: AW: Kopien mit Makro
von: Erich G.

Geschrieben am: 17.12.2006 12:25:29
Hallo Manfred,
wo ist die Lies-mich-Seite versteckt?
Du könntest auch hier beschreiben, welche Zellen/Bereiche du wohin kopiert haben willst.
Müssen es wirklich Kopien sein, oder ginge nicht auch z. B. SVERWEIS?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Bild

Betrifft: AW: Kopien mit Makro
von: stimmt

Geschrieben am: 17.12.2006 12:47:01
Sorry, habe die falsche Datei hochgeladen.
Mit sverweis geht es nicht, da immer gleichzeitig 3 Zeilen kopiert werden müssen.
Somuss z.B. der Bereich der Originaldatei A2:G4 in die nächsten freien zeilen der Kopiedatei aber an anderer Stelle kopiert werden.
jetzt nist die liesmich drin.
Danke Manfred
Bild

Betrifft: AW: Kopien mit Makro
von: stimmt
Geschrieben am: 17.12.2006 12:48:52
Sorry,
bin neu hier
https://www.herber.de/bbs/user/39062.xls
jetzt klappt es aber.
Bild

Betrifft: AW: Kopien mit Makro
von: Erich G.

Geschrieben am: 17.12.2006 14:57:18
Hallo Manfred,
das geht mit folgendem Makro (im Code der Arbeitsmappe, gilt für alle Tabellenblätter):
Option Explicit
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim rngF As Range, lngF As Long, lngZ As Long
Select Case Sh.Name
Case "Geschäftsvorfälle Original "
Case "Lies mich"
Case Else
If Intersect(Target(1), Columns(1)) Is Nothing Then Exit Sub
If (Target(1).Row - 2) Mod 3 <> 0 Then Exit Sub
If IsEmpty((Target(1))) Then Exit Sub
With Sheets("Geschäftsvorfälle Original ")
Set rngF = .Columns(1).Find(Target(1))
If rngF Is Nothing Then
MsgBox "Buchungssatz " & Target(1) & " nicht gefunden.", vbCritical, "Abbruch"
Exit Sub
End If
lngF = rngF.Row
lngZ = Target(1).Row
Application.EnableEvents = False
Range(Cells(lngZ, 2), Cells(lngZ, 7)) = _
.Range(.Cells(lngF, 2), .Cells(lngF, 7)).Value
Range(Cells(lngZ + 1, 5), Cells(lngZ + 2, 7)) = _
.Range(.Cells(lngF + 1, 5), .Cells(lngF + 2, 7)).Value
Application.EnableEvents = True
End With
End Select
End Sub
Und hier die Beispielmappe:
https://www.herber.de/bbs/user/39066.xls
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Bild

Betrifft: AW: Kopien mit Makro
von: stimmt

Geschrieben am: 17.12.2006 16:39:56
Hi Erich,
Erst einmal einen Riesendank. So wie ich es beschrieben habe, klappt es genau. Das Problem:
2 Klenigkeiten habe ich vergessen.
Außerdem habe ich die Aufgabenstellung noch ein klein wenig erweitert. Sei so lieb und schau noch mal rein.
Danke
Manfred
https://www.herber.de/bbs/user/39070.xls
 Bild
Excel-Beispiele zum Thema "Kopien an veerschiedenen Stellen mit Makro"
Sicherheitskopien von Arbeitsmappen speichern Bei falscher Eingabe alten Wert wiederherstellen
Automatisch Sicherungsdatei erstellen Adressdaten der aktiven Zelle über VBA feststellen
Fundstellen in UserForm listen Eigene Menüleiste mit Untermenüs erstellen
Arbeitsmappen-History erstellen Spielpaarungen zusammenstellen
Per VBA einen Verweis zu einer *.DLL erstellen Spracheinstellung der Excel-Anwendung feststellen