Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
944to948
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
944to948
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Druck per Makro von 1 Tabelle mit anderen Werten

Druck per Makro von 1 Tabelle mit anderen Werten
30.01.2008 01:19:46
1
Hallo Leute!
Und ich hab wiedermal ein Problem...
In meiner Mappe gibt es mehrere Arbeitsblätter. In einem Blatt (EINGABE) stehen die Häuser einer Immobilie mit den dazugehörigen Wohnungen. In diesem Blatt sind zudem 2 Zellen welche die Wohnungen enthalten welche gedruckt werden sollen. z.B von Top A1 bis Top C12. A1 und C12 ist in diesem Fall der Topname und kein Zellbezug.
Ein zweites Blatt (DRUCK) beinhaltet lauter SVERWEISE welche alle die Zelle A1 als Suchkriterium verwenden. In dieser Zelle steht der KEY von der jeweiligen Wohnung vom Blatt EINGABE.
Nun wäre es genial, wenn ich per Schaltfläche den Ausdruck vom Blatt DRUCK starten könnte und das sich nach jedem druck eines Tops die Zelle A1 im Blatt EINGABE auf den jeweiligen Key des nächsten zu druckenden Tops ändert.
Also. Top A1 bis Top C12 sind insgesamt 33 Wohnungen. Ich möchte nun das Blatt DRUCK 33 mal ausdrucken, nur eben jedesmal mit einem anderen KEY in der Zelle A1.
Es können übrigends zwischen 2 und 200 Wohnungen pro Immobilie vorkommen.
Hier ist noch eine Beispieldatei ums noch etwas genauer dazustellen.
https://www.herber.de/bbs/user/49512.xls
Wenn jemand eine Lösung hat und diese noch etwas erklären könnte damit ich sie ggf. anpassen kann wäre mir das eine RIESEN HILFE! ;-)
Ich danke euch jetzt schon mal und hoffe das ihr mir auch diesmal wieder aus der Klemme helfen könnt.
Danke und liebe Grüße
Martin

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

Betreff
Datum
Anwender
Anzeige
AW: Druck per Makro von 1 Tabelle mit anderen Werten
30.01.2008 08:21:00
1
Hallo Martin,
der Code sucht in Spalte D die Werte aus K3/K4 und ermittelt so die entsprechenden Nummern.
In der Schleife werden diese Nummern dann jeweils in "Druck" A1 eingetragen und die Tabelle gedruckt.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub drucken()
Dim rng
Dim lngFirst As Long, lngLast As Long, l As Long

With Sheets("Eingabe")
    Set rng = .Range("D:D").Find(.Range("K3"), lookat:=xlWhole)
    If Not rng Is Nothing Then lngFirst = rng.Offset(0, -2)
    Set rng = .Range("D:D").Find(.Range("K4"), lookat:=xlWhole)
    If Not rng Is Nothing Then lngLast = rng.Offset(0, -2)
    Set rng = Nothing
End With

If lngFirst > 0 And lngLast > 0 Then
    For l = lngFirst To lngLast
        With Sheets("Druck")
            .Range("A1") = l
            .PrintOut
        End With
    Next
End If

End Sub


Gruß Sepp



Anzeige
AW: Druck per Makro von 1 Tabelle mit anderen Werten
30.01.2008 11:13:13
1
Hallo Sepp!
Vielen vielen dank! Der Code funktioniert Perfekt! Das ist genau das was ich brauche!
Allerdings versteh ich noch nicht 100% wie er funktioniert.
Ich versuchs mal zu erklären. Kannst du mir bitte sagen ob das so stimmt?

Sub drucken()
Dim rng
Dim lngFirst As Long, lngLast As Long, l As Long
With Sheets("Eingabe")

Bis hier hin versteh ichs...


Set rng = .Range("D:D").Find(.Range("K3"), lookat:=xlWhole)

Hier gibst du den Befehl in der Spalte D:D die Zelle K3 zu finden. Der Befehl lookat setzt den Suchwert fest


If Not rng Is Nothing Then lngFirst = rng.Offset(0, -2)

Wenn der gesuchte wert in der Spalte D:D vorkommt setzt du den Wert minus 2 Spalten also von D nach B


Set rng = .Range("D:D").Find(.Range("K4"), lookat:=xlWhole)
If Not rng Is Nothing Then lngLast = rng.Offset(0, -2)

Hier machst du praktisch das gleiche nur mit dem letzten Wert in der Liste. Der Rest ist mir eigentlich klar
Versteh ich das so richtig?
Danke dir nochmals für deine Hilfe! Echt super!
lg
Martin

Anzeige
AW: Druck per Makro von 1 Tabelle mit anderen Werten
30.01.2008 11:35:33
1
Hallo Martin,

Set rng = .Range("D:D").Find(.Range("K3"), lookat:=xlWhole)


Hier gibst du den Befehl in der Spalte D:D die Zelle K3 zu finden. Der Befehl lookat setzt den Suchwert fest
Der Suchbegriff= ".Range("K3")", LookAt:= "XlWhole" gibt an, das nur nach ganzen Zeichenfolen gesucht wird, sonst würde "C1" zB. auch "C12" finden.


If Not rng Is Nothing Then lngFirst = rng.Offset(0, -2)


Wenn der gesuchte wert in der Spalte D:D vorkommt setzt du den Wert minus 2 Spalten also von D nach B
Hier wird nicht der Wert minus zwei gesetzt, sondern der Wert der zwei Spalten links von der Fundstelle steht zugewiesen.


Gruß Sepp



Anzeige
AW: Druck per Makro von 1 Tabelle mit anderen Werten
30.01.2008 11:43:59
1
Sepp...
Du bist der Grösste!
Ich habs jetzt so kapiert, dass ich das Modul für mein Beispiel anpassen kann und das hilft mir total weiter!!!
Wenn nochmal was unklar wäre, würd ich mich nochmal melden...
Nochmal herzlich Danke!
Ist echt ein spitzen Forum hier!
lg
Martin

AW: Druck per Makro von 1 Tabelle mit anderen Werten
30.01.2008 11:31:25
1
Hallo Sepp!
Vielen vielen dank! Der Code funktioniert Perfekt! Das ist genau das was ich brauche!
Allerdings versteh ich noch nicht 100% wie er funktioniert.
Ich versuchs mal zu erklären. Kannst du mir bitte sagen ob das so stimmt?

Sub drucken()
Dim rng
Dim lngFirst As Long, lngLast As Long, l As Long
With Sheets("Eingabe")

Bis hier hin versteh ichs...


Set rng = .Range("D:D").Find(.Range("K3"), lookat:=xlWhole)

Hier gibst du den Befehl in der Spalte D:D die Zelle K3 zu finden. Der Befehl lookat setzt den Suchwert fest


If Not rng Is Nothing Then lngFirst = rng.Offset(0, -2)

Wenn der gesuchte wert in der Spalte D:D vorkommt setzt du den Wert minus 2 Spalten also von D nach B


Set rng = .Range("D:D").Find(.Range("K4"), lookat:=xlWhole)
If Not rng Is Nothing Then lngLast = rng.Offset(0, -2)

Hier machst du praktisch das gleiche nur mit dem letzten Wert in der Liste. Der Rest ist mir eigentlich klar
Versteh ich das so richtig?
Danke dir nochmals für deine Hilfe! Echt super!
lg
Martin

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige