Bei Doppelklick in UF, Namensbereich einfügen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
UserForm ListBox


Excel-Version: 97
nach unten

Betrifft: Bei Doppelklick in UF, Namensbereich einfügen
von: MikeS
Geschrieben am: 10.04.2002 - 15:16:40

Hallo Leute,

habe nachfolgendes Problem:

In meiner Mappe gibt es mehrere Sheets in denen bestimmte Zellbereiche mit Namen versehen sind (Die Tabellen sehen alle gleich aus).

Die Blattnamen und die dazugehörigen Bereichsnamen werden dann in eine Userform eingelesen (s.nachfolgender Code):

Private Sub UserForm_Initialize()
Dim i As Integer
'Wir füllen die Blattliste mit den Namen der Blätter, die Bereichsnamen enthalten
'Das Rechnungsblatt gehört nicht dazu.
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "Rechnungsblatt" Then
cboTabellen.AddItem Worksheets(i).Name
Next
'Erste Tabelle vorwählen
cboTabellen.ListIndex = 0
End Sub

Die Userform besteht aus einem Kombifeld, in dem nun alle Blattnamen angezeigt werden.

Nun klickt man einen Blattnamen an und im darunter liegenden Listfeld werden alle Bereichsnamen des ausgewählten Blattes angezeigt.

Bis dahin klappt alles bestens!!!

Wenn man nun einen Bereichsnamen in dem Listfeld doppelklickt, soll der zugehörige Bereich in das Blatt "Rechnungsblatt" eingefügt werden.

Das funktioniert leider nicht richtig, denn wechsle ich im Kombifeld ein anderes Blatt aus und klicke danach einen anderen Bereichsnamen doppelt an, wird zwar der richtige Zellbereich kopiert, doch leider immer nur vom ersten Blatt???

Wer kann mir helfen?

Vielen Dank
MikeS


nach oben   nach unten

Re: Bei Doppelklick in UF, Namensbereich einfügen
von: MRR
Geschrieben am: 10.04.2002 - 15:33:11

Hi Mike,
hier - eine aktuelle Fassung. Wie gut, dass ich die CD mit den Dateien dabei habe...

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim lngLastRow As Long
Dim As Integer
lngLastRow = Range("B65536").End(xlUp).Offset(2, 0).Row
If lngLastRow < 6 Then lngLastRow = 6
Range(ActiveWorkbook.Names(Listbox1.List(Listbox1.ListIndex))).Copy Cells(lngLastRow, 1)
With Cells(lngLastRow, 1).CurrentRegion   'STRG-* zum Markieren
  .Select
  For i = 7 To 12
    Rahmenlinien i, xlNone    '-4142
  Next
End With
End Sub

Hab's getestet - geht.
Bis denne.
Matthias

nach oben   nach unten

Wie war das noch mit den Rahmenlinien?
von: MikeS
Geschrieben am: 10.04.2002 - 15:43:12

Hi Matthias,

erstmal vielen Dank für den Code. So hattest Du es jauch auch in meiner Urfassung programmiert.

Ich bin hier gerade an einem neuen Projekt und hatte den Code etwas abgeändert, aber leider falsch!!!

Wie muß ich den Code nun ändern, daß alle Rahmenlinien der Quelldatei mit übernommen werden???

Vielen Dank Mike


nach oben   nach unten

Re: Wie war das noch mit den Rahmenlinien?
von: MRR
Geschrieben am: 11.04.2002 - 00:46:15

Wenn ich es richtig sehe, den Code von With bis End With weglassen (erst einmal deaktivieren). Oder wie oder was?
Fröhlichen Tagesanfang!
Matthias

nach oben   nach unten

So klappt`s!!!
von: MikeS
Geschrieben am: 11.04.2002 - 08:08:18

Hi Matthias,

das war`s.

Dankeschön
Ciao bis später Mike


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Bei Doppelklick in UF, Namensbereich einfügen"