Makro
Hallo liebe Experten,
wer kann einem `"Unwissenden" ein Licht anzünden?
Folgendes Problem:
Ich habe eine exel Tabelle erstellt ( Mappe1- Tab.1), in welcher ich unter anderem bei 31
Zellen ein Hakenkästchen eingebaut habe.
Diese Hakenkästchen haben eine Zellverknüpfung auf die Tab2. der Mappe1)
Setzt man alle 31 Häkchen, steht dann als Folge dessen in Tab.2
z.B. ( 01.12.2008
02.12.2008) u.s.w. bis 31.12.2008
Bis dahin kein Problem - aber jetzt kommt`s!
Diese Datumsangaben im Arbeitsblatt2 ( das sollten nur 4 Stück sein also 4 gesetzte Haken ) sollen in einer Tabellenzeile in der Tab.2 z.B.
03.12.2008 05.12.2008 12.12.2008 18.12.2008 erscheinen
Das Problem ist folgendes:
Bei den so gesetzen Häkchen erscheint die Datumstabelle in Tab.2
wie folgt:
leere Zelle
leere Zelle
03.12.2008
leere Zelle
05.12.2008 u.s.w.
Wie stelle ich es jetzt an, das diese vier Datumsangaben hintereinander sortiert in einer Zeile erscheinen.
Ich dachte über ein Makro erst einmal die Daten automatisch sortieren lassen - aber das funktioniert schon mal nicht.
Selbst mit Sub auto_open startet es nicht automatisch.
Ich muß allerdings zugeben ich hab überhaupt noch keine Erfahrung in VBA, das ist mein erster Makroversuch und der hat gleich kläglich versagt!
Ich hoffe jemand nimmt dieses Problemes mal an und Danke Euch schon jetzt im voraus!
Gruß kurtl
Antwort schreiben
Antwort 1 von fedjo vom 06.11.2020, 18:24 Options
Hallo Kurtl,
in das Codefenster der Tabelle2 einfügen.
Spalte (A) wird sortiert, wenn ein Eintrag oder eine Änderung erfolgt. Die Datums werden dann in C1 in einer Reihe eingetragen.
Gruß
fedjo
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Dim RaZelle As Range
For Each RaZelle In Range(Target.Address)
If RaZelle.Column = 1 Then
ActiveSheet.UsedRange.Sort Key1:=Range("A1"), Order1:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
Exit For
End If
Next RaZelle
Range("A1:A4").Copy
Range("C1").PasteSpecial Paste:=xlAll, Operation:=xlNone, SkipBlanks:=False _
, Transpose:=True
Application.CutCopyMode = False
End Sub
Antwort 2 von kurtl vom 06.11.2020, 19:14 Options
Hallo fedjo,
danke für Deine schnelle Antwort, aber sorry, Du hast es hier mit einem Blindgänger zu tun.
Also folgendes:
Habe noch einmal neues Arbeitsblatt erstellt.
In der Tabelle1 5 Hakenkästchen gesetzt und diese in der Tabelle2
mit der Spalte B1 bis B5 verknüpft.
Jetzt erscheint in der Spalte B1 bis B5 WAHR oder FALSCH je nachdem
Haken gesetzt ist oder nicht.
Jetzt hab ich in der Spalte D1 bis D5 verschiedene Datum`s
01.11.2008
30.10.2008
05.11.2008 u.s.w. eingegeben.
Nun die Spalten A1 bis A5 mit der Formel =WENN(B1=WAHR;D1;)
Nun erscheint in A1( Tabelle2 ), wenn in Tabelle1 der Haken gesetzt wird
das Datum 01.11.2008.
Jetzt habe ich Deinen Code ( hast Du den so aus der " kalten" aus dem Handgelenk geschüttelt? - Respekt in das Codefenster der Tabelle 2 eingefügt, aber nichts passiert dann in C1- leider.
Wenn ich z.B. in Tabelle2 über Extras - Makro - Makros das Makrofenster
anschaue ist da überhaupt keiner angezeigt.
Bitte hab Nachsicht mit mir aber irgend etwas hab ich sicher falsch gemacht.
Gruß kurtl und Danke noch einmal für Deine Mühe!
Antwort 3 von fedjo vom 07.11.2020, 13:56 Options
Hallo Kurtl,
vielleicht solltest du eine Mustertabelle
hochladen, damit ich dann deine Angaben gleich umsetzen kann .
Gruß
fedjo
Antwort 4 von kurtl vom 07.11.2020, 19:23 Options
Hallo fedjo,
hab die Tabelle hochgeladen. Ich weiß zwar nicht, wo Du die jetzt sehen kannst aber Du wirst das schon wissen.
Doch ein paar Erläuterungen dazu.
Im Tabellenblatt Tagegeld ist jetzt fiktiv der Monat Januar 2009 dargestellt.
Die orangen Hakenkästchen rechts der Tabelle bedeuten, dass 4 mal im Monat Januar Sport absolviert wurde ( es sind vier Häkchen gesetzt ).
Im Tabellenblatt Januar Spalte B65 - B94 sind die Verknüpfungen der
Hakenkästchen.
Die vier angezeigten Tage 06.01. / 07.01. / 18.01. / und 26.01.
sollen jetzt in der Spalte D8 bis G8 ( Datum Name1)
erscheinen.
Das gleiche soll dann mit der roten Hakenkästchenreihe geschehen
und die Daten sollen dann in der Reihe H8 bis K8 erscheinen - aber so weit bin ich noch nicht.
Wenn ich erst einmal den Anfang habe, schaffe ich den Rest hoffentlich auch allein.
Das ist die Aufgabe, für mich ist sie leider zu schwer, ich hoffe für Dich nicht.
Gruß und Dank kurtl
Antwort 5 von fedjo vom 08.11.2020, 08:54 Options
Hallo Kurt
Zitat:
hab die Tabelle hochgeladen. Ich weiß zwar nicht, wo Du die jetzt sehen kannst aber Du wirst das schon wissen
Den dazugehörigen Link brauche ich schon um die Tabelle zu finden.
Gruß
fedjo
Antwort 6 von kurtl vom 08.11.2020, 19:44 Options
Hallo fedjo,
tut mir leid, aber ich kenn mich in diesem Forum noch nicht so richtig aus. Ich hab die Tabelle hochgeladen und weiß dann in der nächsten Maske nicht so richtig weiter. Muß ich nicht Deine e-Mail Adresse kennen um Dir den Link zukommen zu lassen?
Gruß kurtl und schönes Wochenende noch
Antwort 7 von coros vom 09.11.2020, 05:11 Options
Hallo Kurtl,
wenn Du die Datei hochgeladen hast, erscheint ein neus Fenster. Dort steht dann das die Datei xx mal heruntergeladen werden kann usw. Dann kommt eine Zeile dort steht "1. Download-Link:" und darunter steht ein Link. Dieser Link fängt an mit "http://rapidshare.com/files/" und endet mit ".html". Das ist der Link, unter dem man die Datei herunterladen kann. Diesen Link kopierst Du indem Du diesen Link bei gedrückter linker Maustaste markierst, dann den markierten Link mit der rechten Maustaste anklickst und in dem Menü "Kopieren" auswählst. Dann klickst Du in Deiner Antwort auf den Button "URL" oder "URL Pop" und in dann in das Feld mit der rechten Maustaste und im Menü "Einfügen" auswählen.
Du musst also Deine Datei nochmal hochladen und dann nach der Beschreibung den Link hier in Deine Antwort einfügen.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 8 von kurtl vom 09.11.2020, 09:39 Options
Hallo fedjo,
hoffe ich hab alles richtig gemacht.
Ich wollte Deine Antworten schon mal bewerten, aber dazu muß ich wohl angemeldetes Mitglied sein.
Gruß kurtl
http://rapidshare.com/files/162046979/Test.xls.html
Antwort 9 von kurtl vom 09.11.2020, 09:43 Options
Hallo fedjo,
so, jetz noch ein Versuch - jetzt sollte es klappen.
Gruß kurtl
http://rapidshare.com/files/162048122/Test.xls.html
Antwort 10 von fedjo vom 09.11.2020, 11:58 Options
Hallo Kurtl,
es hat jetzt funktioniert dank Oliver.
Melde mich später nochmal.
Gruß
fedjo
Antwort 11 von fedjo vom 09.11.2020, 13:50 Options
Hallo Kurtl,
ich habe ein Makro in das Codefenster der Tabelle (Januar) eingefügt, es wird immer dann gestartet wenn die Tabelle aktiv wird.
TestGruß
fedjo
Antwort 12 von kurtl vom 10.11.2020, 09:48 Options
http://rapidshare.com/files/162100692/Test.xls
Antwort 13 von kurtl vom 10.11.2020, 10:10 Options
Hallo fedjo,
vielen Dank für Deine Mühe und Hallo Oliver tschuldigung, dass ich mich bei Dir noch gar nicht für Deine Hilfe bedankt habe - was ich jetzt nachholen möchte.
Ich hab jetzt nur noch ein Problem ( ich sehe Euch beide bildlich mit den Augen rollen über diesen " Blödmann", der ja rein gar nichts weiß) - wie komme ich jetzt wieder an meine von fejo bearbeitete Exel Tabelle?
Wenn ich auf den Link Test klicke in der Antwort von fedjo, komme ich auf die Seite von rapidshare.com, wo der Link von meiner Tabelle Namens Test xls steht. Und wie dann weiter?
Anklicken läßt sich da nichts. Die ganze Mühe von Euch wäre doch umsonst gewesen, wenn ich jetzt nicht an meine Tabelle käme oder? Ich verspreche, dann habt Ihr erst einmal 3 Tage vor mir Ruhe. Ich habe zwar noch tausend Fragen aber ich werde auch versuchen mal jemandem, der noch weniger weiß als ich mal einen gute Tip zu geben.
Gruß und Dank
kurtl
Antwort 14 von hans889 vom 10.11.2020, 10:15 Options
Hallo Kurtl,
auf der Rapidshareseite angekommen, klickst du auf 'Free User', das ist ein Link zur Downloadseite deiner Datei. Dann im dem Fenster, was da kommt, auf 'Download' :-)
Und schon schwebt die Datei auf magische Art und Weise auf deinen Rechner :-)
Gruß Hans