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

Bei Klick, Kopie eines Begriffes in aktive Zelle

Bei Klick, Kopie eines Begriffes in aktive Zelle
19.10.2004 10:14:37
M.Str.
'
Servus Forum-Aktive,
meine VBA-Kenntnisse sind nicht besonders gut,
daher wende ich mich an Euch.
Ich habe folgendes Problem, das ich im
VBA-Makro-Code realisieren möchte :
in einem separaten Fenster, ListBox, befinden
sich Begriffe, z.B. "ABC", "DEF", "GHI", "JKL",
usw. untereinander angeordnet.
Folgende Funktionsweise stelle ich mir vor :
-Aktivierung einer Zelle / eines Feldes
des Tabellen-Blattes, durch anklicken.
-Duch anklicken einer Makro-Schalt-Fläche
öffnet sich das Fenster / die ListBox
mit den Begriffen "ABC", "DEF", ....
-Durch anklicken eines Begriffes, wird dieser
in das aktive Feld / Zelle des Tabellen-Blattes
kopiert,
das Fenster / die ListBox schliesst sich
anschliessend automatisch.
-Die Begriffe sollen beliebig ergänzbar sein.
-Die Makro-Schalt-Fläche und das Fenster /
die ListBox sollen beliebig verschiebbar sein,
um das Tabellen-Blatt vollständig nutzen
zu können.
Die Umsetzung dieser Problematik und die
Liste mit den Begriffen sollte vollständig
in Form eines Makro's erfolgen.
Für Eure Hilfe währe ich Euch sehr dankbar.
Gruss Michael

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bei Klick, Kopie eines Begriffes in aktive Zel
RALF
Moin,
lösungsmöglichkeit mit Hilfe eines UserForm.
Dort die Listbox einbinden (brauchst aber eine Datenquelle, wo die Listbox mit gefüllt wird, da Du diese ja erweitern willst.
Die Listbox kann dann an einen Tabellen geknüpft werden.
Auf dem UserForm dann eine Schltfläche, die den markierten Wert aus der ListBox in die aktive zelle schreibt.
Zusätzliche Infos über die Recherche auf dieser Internetseite.
Gruß RALF
AW: Bei Klick, Kopie eines Begriffes in aktive Zel
19.10.2004 12:15:31
M.Str.
'
Servus Ralf,
vielen Dank für Deine Info.
Ich habe bereits das Excel-Archiv und die
Excel-Hilfe bemüht, jedoch bin ich nicht
weiter gekommen, da meine VBA-Kentnisse
sich im Anfangs-Stadium befinden.
Ich weis nicht wie ich soetwas angehen soll.
Kannst Du mir bitte dabei Helfen ?
Vielen Dank im Voraus.
Gruss Michael
Anzeige
AW: Bei Klick, Kopie eines Begriffes in aktive Zel
RALF
Mahlzeit,
wenn das mit dem VBA nicht so weit her ist, wieso dann mit VBA?
Vorschlag:
Die entsprechenden Zellen werden mit Menu Daten - Gültigkeit... Liste gesetzt.
Wird diese Zelle dann angewählt, ist ein drop down Feld sichtbar, das auf eine Liste erlaubter Werte zurückgreift.
Die Liste ist in der Excelmappe enthalten. Die Liste kann bei Bedarf vom Anwender erweitert werden, wenn der definierte Bereich groß genug ist.
Gruß RALF
AW: Bei Klick, Kopie eines Begriffes in aktive Zel
19.10.2004 17:31:31
M.Str.
'
Servus Ralf,
vielen Dank für Deine Info.
Bitte Entschuldige, meine
Kentnisse diesbezüglich sind leider
sehr mager,
daher verstehe ich auch nicht, was Du
mir mit Deiner letzten Info sagen willst.
Mit Beispielen in VBA-Code-Form kann ich
einfach mehr anfangen.
Bitte, vielleicht ist ein Beispiel möglich ?
Für Deine Geduld danke ich sehr.
Gruss Michael
Anzeige
AW: Bei Klick, Kopie eines Begriffes in aktive Zel
RALF
Moin,
grundsätzlich: dieses Forum ist dafür da, dass alle ihr Wissen ein bissel erweitern.
Wenn ich mich in Rätseln ausdrücke, dann sag Bescheid.
zum thema
schau Dir mal dieses Bsp. an, was ich mit meinem letzten kommentar meine.
Gruß RALF
AW: Datei.....die 2.
RALF
Asche auf mein Haupt....ich hätte heute im bett bleiben sollen...
https://www.herber.de/bbs/user/12349.xls
dafür habe ich noch eine 2.Variante reingestellt (auf VBA-Basis)
folgender code (ist auch in der Arbeitsmappe) an das entsprechende Blatt anbinden

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'verhindert, dass die Schleife xmal durchlaufen wird (wegen Undo-Ereignis)
If p = 1 Then Exit Sub
For Each zelle In [bereich]
If Target = zelle Then p = 0: Exit Sub
Next zelle
'wenn es keine Übereinstimmung gab...
MsgBox "Wert stimmt mit keenem Listeneintrag überein", vbExclamation, "WERTEFEHLER"
p = 1
Application.Undo
p = 0
End Sub

Gruß RALF
Anzeige
AW: Datei.....die 2.
20.10.2004 10:32:52
M.Str.
'
Servus Ralf,
vielen Dank für Deine Vorschläge.
Sehr interessant ist Variante1,
mit dem Auswahl-Menue, das sich
öffnet,
wenn man den definierten Bereich
anklickt.
Aber draufgekommen, wie das funktioniert,
bin ich leider nicht, der Zusammenhang
zwischen Werte-Bereich und formatierter
Bereich und die Funktion im formatierten
Bereich sind mir vollkommen unklar.
Wie hast Du das gemacht ?
Bitte, besteht die Möglichkeit,
dass Du das mal aufzeigst ?
denn ich möchte die Problematik nicht
einfach kopieren, sondern auch
begreifen für andere Anwendungen.
Übrigens, lässt sich der Wertebereich
mit den Werten / Begriffen auch in
einem Makro integrieren ?
so dass das Tabellen-Blatt vollständig
genutzt werden kann,
z.B. wie bei dieser Routine
für eine ListBox :
'----------------------------------

Private Sub UserForm_Initialize()
With ListBox1
.AddItem "ABC"
.AddItem "DEF"
.AddItem "GHI"
.AddItem "JKL"
.AddItem "MNO"
End With
End Sub

'----------------------------------
Vielen Dank für Deine Geduld.
Gruss Michael
Anzeige
AW: Datei.....die 2.
RALF
Hi,
der Bereich ist ja benannt, d.h. er lässt sich natürlich in eine Prozedur einbinden.
Das Tabellenblatt hat unheimlich viele Spalten, da solle es auf eine mehr nicht ankommen (z.Bsp. den Wertebereich in Spalte A und die dann ausblenden...).
Für Variante 2: da ist die Liste ja in eine Prozedur eingebunden....
Für Variante 1: wie hab ichs gemacht?
[E1:E18] markiert
Menuleiste
Daten - Gültigkeit...
Liste
Quelle [B1:B9]
das geht leider nur im gleichen Blatt
Gruß RALF
AW: Datei.....die 2.
20.10.2004 11:48:07
M.Str.
'
Servus Ralf,
vielen Dank für Deine Erklärung.
Die Variante1 ist ein super Lösungs-
Ansatz.
Dennoch, das verstecken der Begriffe
in einem Makro halte ich für eine
sehr elegante Lösung, ähnlich wie bei
einer ListBox, z.B. wie hier :
'----------------------------------

Private Sub UserForm_Initialize()
With ListBox1
.AddItem "ABC"
.AddItem "DEF"
.AddItem "GHI"
.AddItem "JKL"
.AddItem "MNO"
End With
End Sub

'----------------------------------
Anstelle von "B1:B9" könnte ein
Makro-Name stehen,
Liste
Quelle [Makro-Name]
Ich währe Dir sehr dankbar, wenn
es hierzu auch eine Lösung gibt,
dann währe diese Problem sehr
elegant und professionel
gelöst.
Bitte entschuldige,
danke für Deine Geduld.
Gruss Michael
Anzeige
AW: Datei.....die 2.
20.10.2004 12:05:22
M.Str.
'
Servus Ralf,
Dein Vorschlag ist absolut super-klasse.
Den Werte-Bereich in einem Makro
einzubinden, Aufruf durch ein Makro,
währe noch eine Steigerung!
Gruss Michael
AW: Datei.....die 2.
RALF
Mahlzeit,
sorry...ich kann Dir nicht ganz folgen...
wie meinen?
Gruß RALF
AW: Datei.....die 2.
20.10.2004 14:46:57
M.Str.
'
Servus Ralf,
kann die Gültigkeits-Funktion
ein Mako aufrufen, in dem sich der
Wertebereich befindet ?
Gruss Michael
AW: Datei.....die 2.
RALF
Gültigkeit ist keine funktion sondern eine spezielle Formatierung von Zellen.
Soll eine Prozedur aufgerufen werden, dann kann dies nur bei einer Aktion auf dem Arbeitsblatt oder einem Klick irgendwohin geschehen.
Ein Bsp hierfür ist der code, der an dem Tabellenblatt Variante2 (_Change Ereignis) dranhängt. Hier wird das Ereignis "Change" - also sobald ein Wert auf dem Blatt geändert wurde - die Abarbeitung des codes auslösen.
Grundsätzlich befindet sich der Wertebereich hier auf einem Excelblatt. Man kann es machen, dass der Wertebereich in einen code eingebaut wird, hat aber den riesengroßen Nachteil, dass man zur Pflege der Datei (des Wertebereiches) immer wieder an den code ran muß.
Gruß RALF
Anzeige
AW: Datei.....die 2.
20.10.2004 17:05:25
M.Str.
'
Servus Ralf,
vielen Dank für Deine Info.
Im Wertebereich befinden sich nur
Standard-Werte, die nur noch selten
angepasst werden sollen.
Das Arbeiten mit
"bei Klick, dann kopiere Wert in aktive Zelle",
soll das Eingeben wiederholt gleicher Werte
vereinfachen.
Die Anpassung einer Werte-Sammlung in einem
Makro, ist sehr einfach, wenn es so ähnlich
funktioniert wie die Werte-Verwaltung einer
ListBox :
'------------------------------------------

Private Sub UserForm_Initialize()
With ListBox1
.AddItem "ABC"
.AddItem "DEF"
.AddItem "GHI"
.AddItem "JKL"
.AddItem "MNO"
End With
End Sub

'-------------------------------
Eine Lösung diesbezüglich
währe mega super.
Gruss Michael
Anzeige
AW: Datei.....die 2.
20.10.2004 17:05:39
M.Str.
'
Servus Ralf,
vielen Dank für Deine Info.
Im Wertebereich befinden sich nur
Standard-Werte, die nur noch selten
angepasst werden sollen.
Das Arbeiten mit
"bei Klick, dann kopiere Wert in aktive Zelle",
soll das Eingeben wiederholt gleicher Werte
vereinfachen.
Die Anpassung einer Werte-Sammlung in einem
Makro, ist sehr einfach, wenn es so ähnlich
funktioniert wie die Werte-Verwaltung einer
ListBox :
'------------------------------------------

Private Sub UserForm_Initialize()
With ListBox1
.AddItem "ABC"
.AddItem "DEF"
.AddItem "GHI"
.AddItem "JKL"
.AddItem "MNO"
End With
End Sub

'-------------------------------
Eine Lösung diesbezüglich
währe mega super.
Gruss Michael
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige