Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema RefEdit
BildScreenshot zu RefEdit RefEdit-Seite mit Beispielarbeitsmappe aufrufen

Wert aus Gültigkeitsliste -> Bereich kopieren


Betrifft: Wert aus Gültigkeitsliste -> Bereich kopieren von: Richard
Geschrieben am: 13.09.2018 08:47:40

Hallo zusammen,

ich habe eine Gültigkeitsliste mit verschiedenen Werten in Tabelle1.
Basierend auf der Auswahl soll dann aus der Tabelle2 der Zellbereich mit dem gleichen Namen rüberkopiert werden neben die Gültigkeitsliste.

Gibt es dafür ne VBA Vorlage?

  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: EtoPHG
Geschrieben am: 13.09.2018 09:06:41

Hallo Richard,

Überdenke bitte nochmal deine Formulierung:
a) Gültigkeitsliste mit verschiedenen Werten Gültigkeitslisten mit gleichen Werten machen wohl keinen Sinn! und das die Liste in Tabelle1 ist, ist wohl weniger entscheidend, als..
b) Basierend auf der Auswahl wo in der Tabelle1 sie angewendet wird.
c) Tabelle2 der Zellbereich mit dem gleichen Namen Welchen Namen?
d) rüberkopiert werden neben die Gültigkeitsliste? Warum? Was ist der Zweck?
e) Gibt es dafür ne VBA Vorlage? Was verstehst du unter einer VBA Vorlage? Ich kenne keinen solchen Begriff!

Gruess Hansueli


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Richard
Geschrieben am: 13.09.2018 09:14:47

Die Werte aus der Gültigkeitsliste haben die gleichen Namen wie der Zellbereich in einer anderen Tabelle
Bsp:
ausgewählter Wert aus der Gültigkeitsliste = TDR3x3 (Tabelle 1 in B11)
Zellbereich in Tabelle2 von A1:B32 heisst TDR3x3

Der Zweck ist dass jedesmal wenn ein anderer Wert ausgewählt wird die passende Passage aus der Tabelle 2 reinkopiert werden soll in die Tabelle1 in B13


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Werner
Geschrieben am: 13.09.2018 09:27:03

Hallo Richard,

meinst du das?

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "B11" Then
    ThisWorkbook.Names(Target.Value).RefersToRange.Copy Range("C11")
End If
End Sub
Der Code gehört ins Codemodul des Tabellenblattes, auf dem deine Gültigkeitsprüfung ist.

Gruß Werner


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Richard
Geschrieben am: 13.09.2018 10:25:41

Im Prinzip ist das das was ich meine..... habe nur ne Fehlermeldung in der Linie ThisWorkbook (1004)


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Werner
Geschrieben am: 13.09.2018 10:40:16

Hallo Richard,

dann hast du deine benannten Bereiche nicht auf Arbeitsmappenebene sondern auf Tabellenlattebene festgelegt.
Dann:

Worksheets("Tabelle2").Names(Target.Value).RefersToRange.Copy Range("C11")
Gruß Werner


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Richard
Geschrieben am: 13.09.2018 10:51:40

Habe es angepasst, der Fehler ist aber der gleiche


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Werner
Geschrieben am: 13.09.2018 11:00:04

Hallo Richard,

hellsehen kann ich leider nicht. Es könnt eauch sein, dass der Wert in deiner Gültigkeitsliste nicht übereinstimmt mit dem Namen deines benannten Bereiches. Die müssen beide identisch sein.

Ansonsten bitte die Mappe hochladen.

Gruß Werner


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Richard
Geschrieben am: 13.09.2018 11:23:56

https://www.herber.de/bbs/user/123917.xlsm


  

Betrifft: sry aber... von: Werner
Geschrieben am: 13.09.2018 11:37:23

Hallo Richard,

...bitte als normale .xlsx, ich kann die sonst nicht herunterladen.

Gruß Werner


  

Betrifft: AW: sry aber... von: Richard
Geschrieben am: 13.09.2018 11:53:20

https://www.herber.de/bbs/user/123918.xlsb

Als .xlsx nimmt er das Makro nicht mit.......


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: EtoPHG
Geschrieben am: 13.09.2018 12:28:15

Hallo Richard,

Da stimmt überhaupt nix mehr. Weder Anfrageformulierung, noch Datenstrukturen noch angegebener XL-Level!

1. Die Auswahl befindet sich in einer Verbundenen Zelle! Warum ? Das macht dir das Leben zur VBA-Hölle!
2. Zellbereich in Tabelle2 von A1:B32 heisst TDR3x3 Da stimmt weder Name, noch Registername.
3. ...hier ist deine sog. VBA-Vorlage, die ins Tabellenblatt, dass du mit Tabelle1 bezeichnest, gehört:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim copyRange As Range
    If Target.Cells(1, 1).Address = "$B$11" Then
        If IsEmpty(Target) Then
            ' Bei leerer Auswahl wird ev. kopierter Bereich gelöscht
            Set copyRange = Intersect(Target.Offset(3).Resize(UsedRange.Rows.Count, _
                            UsedRange.Columns.Count), UsedRange)
            If Not copyRange Is Nothing Then copyRange.Clear
        Else
            ' Fehler auf undefinierte Namen abfangen
            On Error Resume Next
            Set copyRange = ThisWorkbook.Names(Target.Cells(1, 1).Text).RefersToRange
            If Err.Number = 0 Then
                ' Kein Fehler => kopiere benannten Bereich rechts von der Auswahl
                copyRange.Copy Target.Offset(3)
            Else
                ' Fehler der Name konnte nicht aufgelöst werden
                MsgBox "Der Name " & Target.Cells(1, 1).Text & " ist nicht definiert " & _
                       "oder entspricht keinem Bereich!", vbCritical
                Err.Clear
            End If
            On Error GoTo 0
        End If
    End If
End Sub
Gruess Hansueli


  

Betrifft: AW: Wert aus Gültigkeitsliste -> Bereich kopieren von: Richard
Geschrieben am: 13.09.2018 14:37:03

Perfekt! Funzt

Die verbundene Zelle aheb ich entfernt, der Zellbereich war allerdings identisch vom Namen.


  

Betrifft: Typisches Feedback von einem XL-Profi? (owT) von: EtoPHG
Geschrieben am: 13.09.2018 15:05:09




Beiträge aus dem Excel-Forum zum Thema "Wert aus Gültigkeitsliste -> Bereich kopieren"