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
1076to1080
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

auf Klick poppt Ausschnitt auf

auf Klick poppt Ausschnitt auf
08.06.2009 12:21:27
Jörg
Hallo zusammen
in einem Blatt soll durch Klick auf eine Zelle ein Fenster oder Dialog aufpoppen, der einen Ausschnitt (ca. 50 Zellen) aus einem anderen Blatt zeigt. (Das allein würde schon viel helfen)
Idealerweise könnte man dann dort in eine bestimmte Zelle klicken, um deren Wert in die Zelle zu holen, die man vorher angeklickt hat.
Eine entfernt ähnliche Frage wird im Forums-Beispiel 58226 behandelt, aber ich glaube, die dort gezeigte Lösung ist für mein Problem zwei Nummern zu groß.
Hat jemand 'ne Idee?
Grüße - Jörg

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Die beiden Bspp im Thread des angegebenen...
08.06.2009 12:57:14
Luc:-?
...Bsps treffen das, was du haben willst, kaum, Jörg...
Es ist eher umgekehrt, das, was du willst, ist 2 Nr größer, denn hier handelt es sich ja "nur" um einen direkten Seitenaufruf, den man auch per Hyperlink oder Ereignisprozedur erreichen könnte, während du wohl so etwas wie ein UserFormular willst, das den Zielbereich abbildet. Gleichzeitig soll eine Verbindung zwischen dem dargestellten und dem aktuellen Blatt derart geschaffen wdn, dass bestimmte Angaben aus dem abgebild ins akt Blatt geholt wdn können. Letzteres könnte man schon so realisieren wie in 58226, aber mit AutoRücksprung und Datentransport! Wovon soll der dann abhängen? Besser wäre es wohl, wenn die Daten aus der UF-Darstellung geholt wdn könnten, die Abbild also dynamisch und editierbar wäre. Und das ist schon ein schönes Stück Arbeit, das hier nicht jeder leisten kann oder will...
Denk' bitte noch mal über Alternativen und Kriterien nach und versuche dich dann ggf an einem (VBA-)Projekt-Gerüst, zu dem du dann Detailfragen stellen kannst, die nicht so arbeitsaufwendig wären...
Gruß Luc :-?
Anzeige
AW: auf Klick poppt Ausschnitt auf
08.06.2009 12:58:59
Martin
Hallo Jörg,
ja, ich sehe da 2 Möglichkeiten:
1. Es öffnet sich eine UserForm mit einer Listbox, in der die 50 Zellen aufgelistet sind und bei einem Klick auf eine Zeile auf die jeweilige Zelle gesprungen wird.
2. Es öffnet sich ein Kontextmenü mit den entsprechenden 50 Zellen (Ebenfalls mit Klick auf die Zelle erfolgt Sprung zu dieser)
Viele Grüße
Martin
ok, Jungs - vielleicht beschränke ich...
08.06.2009 13:39:22
Jörg
...mich dann lieber auf die "Kleine Lösung": eine reine Anzeige, aus der man dann was ablesen und eintragen kann. Sowas hatte ich erst probiert mit einem Kommentar, aber erstens ist der abzubildende Bereich dreispaltig (was im Kommentar zerfleddert wird), und zweitens wird da gelegentlich mal was geändert (was dann im K. v.Hand nachgepflegt werden müßte)
Bei der reinen Anzeige könnte das ja auch mit einem Button geregelt werden.
Bliebe also die Aufgabe:
bei Klick zeige in Tabelle1 ein Fensterchen (o.ä.) mit dem Bereich Tabelle2!A1:C15
Dazu fehlen mir verschiedene VBA-Vokabeln, denke ich. Könnt ihr mir auf die Sprünge helfen, wie der Ansatz ist...?
Gruß - Jörg
Anzeige
AW: auf Klick poppt Ausschnitt auf
08.06.2009 16:39:30
Ramses
Hallo
meinst du so
https://www.herber.de/bbs/user/62299.xls
Für etwaige Selbstversuche:
Die UF muss auf "ShowModal = False" stehen, und das Spreadsheet.Control muss über die Steuerelement-Toolbox nachträglich eingebunden werden
Gruss Rainer
@Ramses: da fehlt was auf meinem Rechner
09.06.2009 12:22:24
Jörg
Hi Rainer,
beim Klick in deine Beispieldatei bekomme ich zweimal die Meldung "Ein Objekt konnte nicht geladen werden" und im Debugger "...Projekt oder Bibliothek nicht gefunden..."
Ich erinnere mich, daß ich in solchen Fällen irgendwo irgendwas anhaken muß, und falls nicht vorhanden, irgendwas runterladen muß... aber wo und was?
Unter "weitere Steuerelemente" finde ich nichts, was "Spresadsheet.Control" heißt...
:-(((
Gruß Jörg
Anzeige
AW: @Ramses: da fehlt was auf meinem Rechner
09.06.2009 12:28:40
Ramses
Hallo
Den VB-Editor öffnen
Die Userform aktivieren, Rechte Maustaste auf den freien Bereich der Steuerelemete Symbolliste "Weitere Steuerelemenete anzeigen".
dort nach unten scrollen bis das "Microsoft Office Spreadsheet Control 10.0" angezeigt wird.
Dort das Häkchen setzen und den Dialog schliessen
Dann sollte das gehen
Gruss Rainer
@Ramses: nur Control 11 vorhanden
09.06.2009 22:58:43
Jörg
Hi Rainer
hatte ursprünglich in Excel gesucht statt VBA und da natürlich überhaupt nix gefunden. Aber in VBA hab ich kein Spreadsheet Control 10.0 - ersatzweise ein Spreadsheet Control 11, aber damit klappt es nicht.
Wat nu?
:-(( Jörg
Anzeige
Misch-Masch
09.06.2009 23:10:52
Ramses
Hallo
Kann nicht sein, oder deine Office Version ist falsch
XP = 10, 2003 = 11, 2007 = 12
Also wenn du XP installiert hast, dann müsstest du eigentlich das 10er Control haben.
Egal,... nimm das 11. Das sollte auch gehen.
Wenn nicht, mein Spreadsheet in der UF löschen und ein 11er dafür einfügen.
Die Einstellungen zum Spreadsheet findest du ja in den Eigenschaften des Controls. Alles weiter wird sowieso per Code eingestellt
Gruss Rainer
AW: 2003, also 11
10.06.2009 13:47:07
Jörg
Ja, Rainer, vielleicht hatte ich da anfangs was falsch klassifiziert? Vielleicht hab ich versehentlich WinXP gedacht und dann den Haken falsch gesetzt... jedenfalls hab ich Excel 2003.
Bei mir heißt das dann Microsoft Spreadsheet 11.0 - von "Control" steht da übrigens nix.
Aber seltsam: Ich hab nun schon zum dritten Mal das Ding angehakt, ok gedrückt - und immer, wenn ich später nachgucke, ist der Haken wieder weg. Auch wenn ich danach erstmal speicher, neu starte usw., oder wenn ich nur anhake, ok drück, dann im Blatt was mache (kommt Fehlermeldung) und dann wieder nachgucke - immer ist der Haken wieder raus.
Wieso ist das so?
Gruß Jörg
Anzeige
AW: 2003, also 11
10.06.2009 13:52:06
Ramses
Hallo
Du musst mein Control löschen und deines dafür einfügen
Gruss Raienr
AW: 2003, also 11
10.06.2009 15:41:20
Jörg
also, Rainer - auch auf die Gefahr hin, daß du nun die Augen verdrehst ;-)) ... wie löscht mnan ein Control, wo finde ich "dein" Control?
Meine VBA-Kenntnisse sind eben "bescheiden" :-((
Gruß Jörg
AW: 2003, also 11
10.06.2009 16:12:28
Ramses
Hallo
Mit "Alt"+"F11" in den VB-Editor wechseln
Doppelklick auf "DeineArbeitsmappe.xls"
die Userform anwählen
Im rechten Fenster siehst du das Control
Markieren > löschen und das 11er Control einfügen wie beschrieben.
Mach es aber besser in einer neuen Mappe.
Rechte Maustaste im VB-Editor über deiner Mappe
Einfügen - Userform
Dann kannst du die Control- und Userform-Einstellungen noch vergleichen
Gruss Rainer
Anzeige
AW: Mäusemelken... ggrrr
10.06.2009 18:41:24
Jörg
..also ich habe
- ne neue Mappe gemacht
- ne Userform eingefügt
- drauf geklickt
- Rechtsklick auf die Werkzeugsammlung
- zusätzl Steuerelement aufgerufen
- Microsoft Spreadsheet 11.0 angekreuzt
- ok gedrückt
- Mappe gespeichert, Excel geschlossen, wieder geöffnet
- nachgeguckt ... Spreadsheet 11 Haken war wieder wech...
Was mach ich denn da bloß falsch? Is doch alles so, wie du geschrieben hast...
:-((((((
AW: Mäusemelken... ggrrr
10.06.2009 21:58:51
Ramses
Hallo
Du musst das Steuerelement auch einfügen !!!
Ankreuzen alleine reicht nicht
Gruss Rainer
AW: genial!!! Kleiner Zinken noch...
11.06.2009 12:46:50
Jörg
also, Rainer - nu hab ich zum ersten Mal in meinem Leben ein Spreadsheet in freier Wildbahn gesehen... wow :-))
Das mit dem Ankreuzen und Einfügen usw. ist so leicht gesagt... aber es ist für VBA-Laien etwa so, als wenn man einem Marsmännchen dazu verhelfen möchte, in dunklen Räumen etwas sehen zu können, indem man ihm erklärt, er möge das Licht einschalten - er weiß aber nicht, was ein Lichtschalter ist :-))
Hab mir also eine neue Mappe gebastelt, eine nagelneue Userform eingebaut mit Buttons 2 und 3, dein ShowDetail umbenannt, meine Form ShowDetail genannt, deinen gesamten Code kopiert, mich dann gewundert, daß es nicht ging, bis ich darauf kam, daß ich noch kein Spreadsheet erstellt hatte... nu klappts!
Bis auf einen kleinen Schönheitsfehler: Es wird der Wert der markierten Zelle der Tabelle (also A1) in die im Spreadsheet markierte Zelle geschrieben. Es soll aber umgekehrt sein: Aus dem SprSh in die Tabelle.
Dazu hab ich mal versuchsweise deine Zeile umgestellt:
statt
Worksheets("Tabelle2").Range(tarAddress) = Selection.Value
ersetzt
Worksheets("Tabelle2").Selection.Value = Me.Spreadsheet1.Selection.Value
aber das geht nicht.
Wie muß es denn richtig heißen?
Gruß Jörg
Anzeige
AW: genial!!! Kleiner Zinken noch...
11.06.2009 13:29:12
Ramses
Hallo
Schön dich auf dem richtigen Weg zu sehen :-)
Du hast es fast richtig gemacht. Es muss dann heissen
Private Sub CommandButton2_Click()
    Dim Qe As Long
    Qe = MsgBox("Daten in : " & Selection.Address & _
    " mit dem aktuellen Wert """ & Me.Spreadsheet1.Selection.Value & """ überschreiben ?", vbQuestion + vbOKCancel, "Datenübernahme")
    If Qe = vbOK Then
        ActiveCell = Me.Spreadsheet1.Selection.Value
        ReadMyData
    End If
End Sub

Gruss Rainer
Anzeige
Perfekt!! Dank dir, Rainer!...
11.06.2009 18:45:22
Jörg
....das ist genau das, was ich meinte.
Ich versteh "sogar" den Code im Wesentlichen und hab wieder einige VBA-Vokabeln gelernt.
Schönen Abend!
Jörg aus Hamburg
...noch 'ne Frage zu den Größeneinstellungen
12.06.2009 19:21:02
Jörg
Hallo Rainer
Hab den Code an meine Arbeitsdatei angepaßt - klappt alles bestens. Aber ich habe Probleme mit der Größe des Spreadsheets: die ändert sich alle naselang - obwohl doch im Code Höhe und Breite klar definiert sind.
Woran kann das liegen? Haben da Fläche der UserForm oder Lage der Buttons ein Wort mitzureden?
Scnhönes WE!
Jörg

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige