Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1004to1008
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

Kombinationsfelder mit Daten aus anderer Tabelle

Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 15:48:18
Bernhard
Hallo liebe Freunde,
ich brauche wieder einmal Eure Hilfe beim Umstricken eines VBA Codes, den ich hier im Archiv gefunden habe.
Die Userform hat u.a. 2 Kombinationsfelder, die mit den Daten aus den Spalten B bzw. C gefüllt werden. Wenn ich die Auswahl in Kombi1 treffe, wird Kombi2 gleich mitgefüllt und umgekehrt. Das ist was ich suche, nur will ich die Userform in einer anderen Tabelle stehen haben und trotzdem auf die Daten in der Ausgangstabelle zugreifen können. Die erfassten Daten aus dieser Userform will ich dann in die Spalten in der 2. Tabelle schreiben. Wo muss ich den Code ergänzen, damit die Userform sich die Daten aus der Tabelle "Lagerliste" holt?
Option Explicit
Public blnSchalter As Boolean, blnSchalter2 As Boolean

Private Sub cboArtikelNr_Change()
Dim rngSuchzelle As Range
If blnSchalter2 = True Then Exit Sub
blnSchalter = True
Set rngSuchzelle = Range("B:B").Find(Me.cboArtikelNr, , , 1)
If rngSuchzelle Is Nothing Then Exit Sub
If rngSuchzelle.Offset(0, 1).Value = "" Then
Me.cboBezeichnung.Clear
Me.cboBezeichnung.Value = ""
Me.txtLagerbestand.Value = rngSuchzelle.Offset(0, 2).Value
Me.txtBestellung.Value = rngSuchzelle.Offset(0, 3).Value
Else
Me.cboBezeichnung.Value = rngSuchzelle.Offset(0, 1).Value
Me.txtLagerbestand.Value = rngSuchzelle.Offset(0, 2).Value
Me.txtBestellung.Value = rngSuchzelle.Offset(0, 3).Value
Call LadenBezeichnung
End If
blnSchalter = False
End Sub



Private Sub cboBezeichnung_Change()
Dim rngSuchzelle As Range
If blnSchalter = True Then Exit Sub
blnSchalter2 = True
Set rngSuchzelle = Range("C:C").Find(Me.cboBezeichnung, , , 1)
If rngSuchzelle Is Nothing Then Exit Sub
If rngSuchzelle.Offset(0, -1).Value = "" Then
Me.cboArtikelNr.Clear
Me.cboArtikelNr.Value = ""
Me.txtLagerbestand.Value = rngSuchzelle.Offset(0, 1).Value
Me.txtBestellung.Value = rngSuchzelle.Offset(0, 2).Value
Else
Me.cboArtikelNr.Value = rngSuchzelle.Offset(0, -1).Value
Me.txtLagerbestand.Value = rngSuchzelle.Offset(0, 1).Value
Me.txtBestellung.Value = rngSuchzelle.Offset(0, 2).Value
Call LadenArtikel
End If
blnSchalter2 = False
End Sub



Private Sub cmdAbbrechen_Click()
Unload Me
End Sub



Private Sub cmdOK_Click()
If blnSchalter = False Then
Range("B:B").Find(Me.cboArtikelNr.Value).Offset(0, 1).Value = Me.cboBezeichnung
Me.cboBezeichnung.Clear
Call LadenBezeichnung
ElseIf blnSchalter2 = False Then
Range("C:C").Find(Me.cboBezeichnung.Value).Offset(0, -1).Value = Me.cboArtikelNr
Me.cboArtikelNr.Clear
Call LadenArtikel
End If
End Sub



Private Sub UserForm_Initialize()
Call LadenArtikel
Call LadenBezeichnung
End Sub


Sub LadenArtikel()
Range("B6").Activate
Do Until ActiveCell.Address(False, False) = "B27"
If ActiveCell.Value = "" Then
ActiveCell.Offset(1, 0).Activate
Else
Me.cboArtikelNr.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
End If
Loop
With Me.cboArtikelNr
.ColumnWidths = .Width - 8
.ListWidth = .Width - 8
End With
Range("A1").Activate
End Sub


Sub LadenBezeichnung()
Range("C6").Activate
Do Until ActiveCell.Address(False, False) = "C27"
If ActiveCell.Value = "" Then
ActiveCell.Offset(1, 0).Activate
Else
Me.cboBezeichnung.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
End If
Loop
Range("A1").Activate
Danke für Eure Hilfe
Gruss
Bernhard

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 19:20:00
Bernhard
Hallo liebe Excel-Freunde,
bemerke gerade, dass ich die Beispieldatei nicht hochgeladen habe.
https://www.herber.de/bbs/user/54900.xls
Bitte, seht Euch mal den Code an.
Danke
Bernhard
AW: Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 21:17:00
Daniel
Hi
wenn die Daten in einer anderen Tabelle stehen, als derjenigen, die gerade aktiv ist, dann muss bei allen direkten Zellbezügen (Range() und Cells()) auf diese Daten das entsprechende Sheet mit angegeben werden. (vollständige Referenzierung).
also beispiel aus deinem Code:

Set rngSuchzelle = sheets("AndereTabelle").Range("B:B").Find(Me.cboArtikelNr, , , 1)


diese Vollständige Refernzierung sollte man sowieso immer verwenden, wenn sich der Code auf ein bestimmtes Sheet beziehen soll, es kann schnell mal vorkommen, daß mal ein anderes sheet aktiv ist, als das geplante.
Gruß, Daniel

Anzeige
AW: Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 22:01:00
Bernhard
Hallo Daniel,
habe den Code entsprechend ergänzt, bekomme aber nun;" Laufzeitfehler 1004 Die Activate Methode des Range Objectes konnte nicht ausgeführt werden" im Laden Artikel!!! Was mache ich falsch?

Sub LadenArtikel()
Sheets("Datenpool").Range("A9").Activate
Do Until ActiveCell.Address(False, False) = "A605"
If ActiveCell.Value = "" Then
ActiveCell.Offset(1, 0).Activate
Else
Me.cbo_ISIN.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
End If
Loop
With Me.cbo_ISIN
.ColumnWidths = .Width - 8
.ListWidth = .Width - 8
End With
Range("A1").Activate
End Sub



Sub LadenBezeichnung()
Range("B9").Activate
Do Until ActiveCell.Address(False, False) = "B605"
If ActiveCell.Value = "" Then
ActiveCell.Offset(1, 0).Activate
Else
Me.cbo_Bezeichnunglng.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
End If
Loop
Range("A1").Activate
End Sub


Gruss
Bernhard

Anzeige
AW: Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 22:09:52
Jochen
Hi,
das ganze selektieren und aktivieren ist nicht nötig. Bereinige das, dann läuft es auch.
mfg Jochen
AW: Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 22:36:00
Bernhard
Hallo Jochen,
leider hilft mir dein Hinweis jetzt nicht richtig weiter, da meine VBA-Kenntnisse (noch) bescheiden sind. Werd mich weiter damit spielen. Vielleicht bring ich es hin.
Jedenfalls Danke
Gruss
Bernhard
AW: Kombinationsfelder mit Daten aus anderer Tabelle
25.08.2008 23:02:00
Bernhard
Danke Daniel,
aber die lektüre verschiebe ich auf morgen. Für heute ist es genug.
Gute Nacht
Bernhard
Anzeige

341 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige