Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1392to1396
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Blond und blauäugiges Makroerstellen

Blond und blauäugiges Makroerstellen
03.12.2014 18:34:16
Prygun
Hallo erst mal an alle,
bin der neue.
Mein Problem liegt wie der Betreff schon sagt in der Erstellung eines Makro, mit dessen Hilfe ich in einer Eingabemaske Daten/Zellenihalte in verschiedene Tabellenblätter übertragen kann.
Problem 1: Die Tabellenblätter werden über ein Dropdownmenü vorgegeben.
Problem 2: Die zu übertragenden Daten sollen in unterschiedliche Zellen der Zieltabellen abgelegt werden.
Da ich in Bezug auf VBA und Makros noch völlig unbeleckt bin, gingen meine Versuche mit dem Makrorecorder bisher alle nach hinten los.
Da ich nicht weiß ob ich mich verständlich ausgedrückt hab, hänge ich mal meine Testdatei an.
https://www.herber.de/bbs/user/94167.xlsm
Ich hoffe damit kann man sich dann ein besseres Bild machen. Die Datei enthält schon ein nicht funktionierendes Makro. Also nicht wundern!
Besten Dank schon mal vorab.
FG
Prygun

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blond und blauäugiges Makroerstellen
03.12.2014 19:51:29
Prygun
Immer diese neuen :-)
Hoffe jetzt hab ich das mit dem Häkchen richtig gemacht.
Frage besteht nach wie vor.
FG
Prygun

Warum so kompliziert?
04.12.2014 15:39:46
Frank
Hallo,
warum sind die Zeilen und Spalten der Zieltabellen so kompliziert benannt?
Ansonsten geht das so:
Sub test()
Wert = Sheets("Eingabe").Cells(6, 2).Value '=B6
ZT = Sheets("Eingabe").Cells(3, 2).Value '=B3
ZZB = Sheets("Eingabe").Cells(3, 4).Value '=D3
ZSStr = Sheets("Eingabe").Cells(3, 7).Value & Sheets("Eingabe").Cells(3, 6).Value '=G3 & F3
Set OZZ = Sheets(ZT).Range("a1:a10000").Find(ZZB, LookIn:=xlValues) 'Suche Zeile in Zieltabelle
Set OZS = Sheets(ZT).Range("a1:aa1").Find(ZSStr, LookIn:=xlValues) 'Suche Spalte in Zieltabelle
ZZ = OZZ.Row
ZS = OZS.Column
Sheets(ZT).Cells(ZZ, ZS).Value = Wert
End Sub
Grüsse,
Frank

Anzeige
AW: Warum so kompliziert?
05.12.2014 17:48:52
Prygun
Hallo Frank,
erst einmal danke für Deine Bemühung!
Zu den Zeilen und Spalten : Spalte A enthält alle Kostenträger/Krankenkassen und in Zeile 1 stehen alle Indikationen (Kard, Ortho, Psy...) welche zusätzlich noch mit AHB, HV kombiniert werden (deshalb die Verkettung).
Das ganze wird mal für meine Kollegen und mich eine Oberfläche die den alten Tischständer mit unzähligen Seiten ersetzen soll.
Nun zu Deine Code.
Hab ihn so weit verstanden, da ich aber wie gesagt mit VBA noch völlig unbeleckt bin weiß ich nicht wie und wo ich den eigentlich korrekt einfügen soll. Hab es zumindest probiert, aber bekomme leider nur den Laufzeitfehler 1004.
Anbei der Code wie er im Moment bei mir vorliegt.
Sub Speichern()
' Speichern Makro
Wert = Sheets("Eingabe").Cells(6, 2).Value '=B6
ZT = Sheets("Eingabe").Cells(3, 2).Value '=B3
ZZB = Sheets("Eingabe").Cells(3, 4).Value '=D3
ZSStr = Sheets("Eingabe").Cells(3, 7).Value & Sheets("Eingabe").Cells(3, 6).Value '=G3 & F3
Set OZZ = Sheets(ZT).Range("a1:a10000").Find(ZZB, LookIn:=xlValues) 'Suche Zeile in Zieltabelle
Set OZS = Sheets(ZT).Range("a1:aa1").Find(ZSStr, LookIn:=xlValues) 'Suche Spalte in Zieltabelle
ZZ = OZZ.Row
ZS = OZS.Column
Sheets(ZT).Cells(ZZ, ZS).Value = Wert
Range(Wert).Select 'da wird der Fehler im Moment angezeigt
Selection.Copy
Sheets(ZT).Select
Sheets(ZT).Cells(ZZ, ZS).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Eingabe").Select
Application.CutCopyMode = False
Selection.ClearContents
End Sub
Sry das ich mich damit so schwer tuh, aber vielleicht kannst Du mir noch mals auf die Sprünge helfen.
FG
Prygun

Anzeige
Kann so nicht gehen...
05.12.2014 19:37:00
Frank
Hallo,
Du must Deinen Code komplett ersetzten. Also nur das, was ich gepostet
habe. Das ist ausreichend und tut, was es soll.
Grüsse,
Frank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige