Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Bitte um Unterstützung !!! Wichtig

Betrifft: Bitte um Unterstützung !!! Wichtig von: walter mb
Geschrieben am: 03.09.2004 15:21:19

Hallo,
habe gestern abend gegen 21.00Uhr ein Mail bzüglich ComboBox geschrieben.
Hier noch einmal mein anliegen:
Ich habe mit Unterstützung des Forums ein Makro zusammengestrickt, welches die
Daten aus einer Datenbank (Spalte 9)durch ein DropDown "reingezogen"werden, nun möchte ich diese Makro auf Basis einer ComboBox ändern (UserForm).
Ich probiere nun schon seit gestern Nacht und kriege es nicht hin.
Deshalb bitte ich um Verständnis wenn ich mich noch einmal melde, weil ich dies dringend benötige !!!
Hier mein Makro:

Public Sub N_NW_DropName_BeiÄnderung() 'Adressdaten aus Datenbank lesen
'ehem.Kopfleiste

Private Sub ComboBox5_Change()
Application.ScreenUpdating = False
Dim wbDatei, wb As Workbook
Dim wsDatabase As Worksheet
Dim Datei As String
Dim bolOpen As Boolean
Dim aVarData() As String
Dim intY, intA As Integer

Dim Fname                       'ich Neu eingesetzt

'Dim NWDlg As Object
'Dim VKNR As Object
'Dim Kuanr As Object
'Dim KuN As Object
'Dim Kustr As Object
'Dim StrNr As Object
'Dim PLZ As Object
'Dim KuOrt As Object
'Dim MBVSNR As Object
 
Datei = "1-NW-PLK-Datenbank.xls"                 ' Name der Datenbank
Fname = "C:\1_PKW_Verkauf\" & Datei              ' kompletter Pfad der Datenbank
bolOpen = False
For Each wb In Application.Workbooks
If wb.Name = Datei Then                             ' Datenbank schon geöffnet?
    bolOpen = True
    Exit For
End If
Next
If bolOpen = False Then Workbooks.Open Filename:=Fname   
                                                    'wenn nicht, dann öffnen
Set wbDatei = Application.Workbooks(Datei)              ' Datenbank zuweisen
Set wsDatabase = wbDatei.Worksheets("Datenbank")        ' Datenblatt zuweisen

'Set NWDlg = ThisWorkbook.Sheets("NWDlg")
'Set VKNR = NWDlg.EditBoxes("VKNR")
'Set Kuanr = NWDlg.EditBoxes("Anrede")
'Set KuN = NWDlg.EditBoxes("KundenN")
'Set Kustr = NWDlg.EditBoxes("Kundenstr")
'Set StrNr = NWDlg.EditBoxes("StrNr")
'Set PLZ = NWDlg.EditBoxes("PLZ")
'Set KuOrt = NWDlg.EditBoxes("KundenOrt")
'Set MBVSNR = NWDlg.EditBoxes("MBVSNR")
'----------------------------------------------------------------------
'intA = NWDlg.DropDowns("DropName").Value  
                                       ' ausgewählte Zeile in Dropdown Excel 97
intA = ComboBox5.Value                 ' ich NEU eingesetzt
For intY = 2 To 1000                   ' Eintrag in Datenbank suchen 1000 Zeilen nach unten
If wsDatabase.Cells(intY, 1) = "" Then      ' wenn leere Zelle gefunden
    Exit For                                ' raus aus Schleife
   Windows("1-nw-plk-VB.xls").Activate    
'ElseIf wsDatabase.Cells(intY, 9).Value = NWDlg.DropDowns("DropName").List(intA) Then
ElseIf wsDatabase.Cells(intY, 9).Value = ComboBox5.List(intA) Then
    Exit For                                ' ich Neu eingesetzt
End If
    Next
'VKNR.Text = wsDatabase.Cells(intY, 1).Value        'kopiert Verkäufer Nr rein
    TextBox1 = wsDatabase.Cells(intY, 1).Value      'kopiert Verkäufer Nr rein
'Kuanr.Text = wsDatabase.Cells(intY, 2).Value       'kopiert Anrede  rein
    TextBox7 = wsDatabase.Cells(intY, 2).Value      'kopiert Anrede  rein
'KuN.Text = wsDatabase.Cells(intY, 3).Value         'kopiert Kundenname  rein
    TextBox9 = wsDatabase.Cells(intY, 2).Value      'kopiert Kundenname  rein
'Kustr.Text = wsDatabase.Cells(intY, 4).Value       'kopiert Strasse  rein
'StrNr.Text = wsDatabase.Cells(intY, 5).Value       'kopiert Haus Nr rein
'PLZ.Text = wsDatabase.Cells(intY, 6).Value         'kopiert PLZ     rein
'KuOrt.Text = wsDatabase.Cells(intY, 7).Value       'kopiert Ort     rein
'MBVSNR.Text = wsDatabase.Cells(intY, 8).Value
 Application.DisplayAlerts = False     'von mir Sicherheitsabfrage unterdrücken
Windows("1-nw-plk-VB.xls").Activate    ' ich gesetzt, hier muß rein sonst bricht
Application.ScreenUpdating = True
End Sub


Bitte helft mir, danke im voraus
Gruss Walter
  


Betrifft: AW: Bitte um Unterstützung !!! Wichtig von: Bert
Geschrieben am: 03.09.2004 15:23:34

Lad doch einfach mal ein Beispiel hoch, wer baut sich sowas schon nach?

Bert


  


Betrifft: AW: Bitte um Unterstützung !!! Wichtig von: Walter mb
Geschrieben am: 03.09.2004 16:20:13

Hallo Bert,
anbei die Datenbank als Datei, ich habe allerdings die ComboBox5 auf meiner UserForm liegen, die Daten werden automatisch übertragen.
Es sind ja Daten jetzt vorhanden.
https://www.herber.de/bbs/user/10499.xls
Das Makro siehe oben soll die Daten aus der Spalte 9 in der ComboBox anzeigen.
Gruss Walter mb


  


Betrifft: AW: Bitte um Unterstützung !!! Wichtig von: Bert
Geschrieben am: 03.09.2004 16:52:52

Tut mir Leid, damit kann ich nichts anfangen.

Bert


  


Betrifft: Hinweis... von: walter mb
Geschrieben am: 03.09.2004 20:25:15

Hallo Bert,
kann ich leider vorstellen.
Das Problem ist ich muß die Daten einlesen der Spalte 9 die aber immer in der Anzahl unterschiedlich sein kann.
Also die Daten sollen nicht so "ComboBox5.RowSource = ("U3:U50")" eingelesen werden
sondern ComboBox4.RowSource = unbekannt lang
Hoffentlich habe ich mich einigermaßen verständlich ausgedrückt.
Gruss Walter mb


  


Betrifft: AW: Hinweis...Ergänzung !! von: walter mb
Geschrieben am: 03.09.2004 21:23:55

Hallo Bert,
habe folgendes in die "UserForm_Initialize" geschrieben:
Windows("1-NW-PLK-Datenbank.xls").Activate
Sheets("Datenbank").Select
ComboBox5.RowSource = ("I:I")
ComboBox5.ListIndex = 0
damit zeigt mir meine ComboBox alle Namen an.
Mein Problem:
Ich muß jetzt die Daten in meine Textboxen kopiert haben, siehe mein altes Makro.
TextBox1 = wsDatabase.Cells(intY, 1).Value 'kopiert Verkäufer Nr rein
TextBox7 = wsDatabase.Cells(intY, 2).Value 'kopiert Anrede rein
TextBox9 = wsDatabase.Cells(intY, 3).Value 'kopiert Kundenname rein
Hilft das ???
Gruss Walter


  


Betrifft: AW: Hinweis...Ergänzung !! Bitte hilf mir,Danke! von: Walter mb
Geschrieben am: 04.09.2004 10:43:01

Guten Morgen Bert,
bitte Hilf mir.
Ich brauche diese Anwendung.
Danke im voraus
Gruß Walter


  


Betrifft: AW: Bitte um Unterstützung !!! Wichtig von: MichiM
Geschrieben am: 05.09.2004 01:43:39

Hallo Walter,
dass bisher keiner geantowrtet hat, liegt vielleicht daran, dass deine Frage zu umständlich formuliert wurde.

In welche ComboBox werden die Daten "gezogen"? Und welche UserForm meinst du?

Gruss
MichiM


  


Betrifft: Danke Super, habe schon verzweifelt... von: Walter
Geschrieben am: 05.09.2004 11:00:42

Hallo MichiM,
danke war schon etwas entäuscht, da einfach das bisherige Excel97 Dialog nicht ändern kann, immer wieder Fehlermeldungen erhalte.
Bisher z.b. VKNR jetzt Textbox1...
'VKNR.Text = wsDatabase.Cells(intY, 1).Value 'kopiert Verkäufer Nr rein
TextBox1 = wsDatabase.Cells(intY, 1).Value 'kopiert Verkäufer Nr rein
'Kuanr.Text = wsDatabase.Cells(intY, 2).Value 'kopiert Anrede rein
TextBox7 = wsDatabase.Cells(intY, 2).Value 'kopiert Anrede rein
'KuN.Text = wsDatabase.Cells(intY, 3).Value 'kopiert Kundenname rein
TextBox9 = wsDatabase.Cells(intY, 2).Value 'kopiert Kundenname rein
später ergänze ich noch die anderen bis MBVSNR.Text durch TextBoxen.
Meine UserForm habe ich Walter benannt.
Gebe anbei meine UserForm_Initialize Makro:
Sheets("Prov-Blatt").Select
Sheets("Prov-Blatt").Unprotect ("ww")
Sheets("Kulanzblatt-VK").Select
Sheets("Kulanzblatt-VK").Unprotect ("ww")
Sheets("GF-TAB-Neu").Select
Sheets("GF-TAB-Neu").Unprotect ("ww")
Sheets("Auftragsblatt").Select
Sheets("Auftragsblatt").Unprotect ("ww")
Sheets("Prov-Blatt").Select
'---------------------------------------------------------------------------------
Label1.Caption = Worksheets("Prov-Blatt").Range("I4")
Label2.Caption = Format(Date, "YYYY") 'gibt aktuelles Jahr aus
TextBox1 = Format(Worksheets("Prov-Blatt").Range("I2").Value, ("0000")) 'VK-Nr.
'so holt von Tabelle rein, auch Format mit TAB-Taste direkt rein !
'----------------------------------------------------------------------------
TextBox2 = Format(Worksheets("Prov-Blatt").Range("R2").Value, ("00"))
TextBox3 = Format(Worksheets("Prov-Blatt").Range("R4").Value, ("00"))

TextBox4 = Format(Worksheets("Prov-Blatt").Range("R8").Value, ("00"))
TextBox5 = Format(Worksheets("Prov-Blatt").Range("S8").Value, ("0000"))
TextBox7 = Worksheets("Prov-Blatt").Range("E14").Value ' Kd.Anrede
TextBox9 = Worksheets("Prov-Blatt").Range("E16").Value ' Kunden-Name
'-------------------------------------------------------------------------
CheckBox1.Value = False
'-------------------------------------------------------------------------
CheckBox2.Value = False 'Grau hinterlegt = True
Worksheets("Kulanzblatt-VK").Range("h3").Value = ""
CheckBox5.Value = False
Worksheets("Kulanzblatt-VK").Range("L3").Value = ""
'-----------------------------------------------------------------------------
Sheets("Prov-Blatt").Select
ComboBox3.RowSource = ("P20:P25")
ComboBox3.ListIndex = 0 ' ersten Wert anzeigen
'-----------------------------------------------------------------------
Sheets("Prov-Blatt").Select
ComboBox4.RowSource = ("U40:U50")
ComboBox4.ListIndex = 0 ' ersten Wert anzeigen
'-----------------------------------------------------------------------
Sheets("GF-Tab-Neu").Select
ComboBox1.RowSource = ("I62:I77")
ComboBox1.ListIndex = 0
ComboBox1.Visible = False
ComboBox2.Visible = False
If CheckBox1.Visible = True Then
Worksheets("GF-Tab-Neu").Range("f1") = "" 'schreibt in Mappe
End If
'------------------------------------------------------------------------------
Windows("1-NW-PLK-VB.xls").Activate
Sheets("Prov-Blatt").Select
Application.ScreenUpdating = True
End Sub
Ich würde mich freuen wenn ich Unetrstützung erhalte, danke im voraus
Walter


  


Betrifft: AW: Danke Super, habe schon verzweifelt... von: MichiM
Geschrieben am: 05.09.2004 11:46:55

Moin Walter,
entweder bin ich blind, oder du hast die falsche Datei hochgeladen.
Ich finde da das Quellblatt (wsDatabase) ebensowenig wie deine UserForm (Walter) - oder sind sehr gut versteckt ;-)

Kopier mal deine Originaldatei und lösche daraus mal die "geheimen" Daten. Lege ein paar Beispieldaten an und lade diese Datei dann nochmal hoch.
Wenn das Quellblatt (irgendetwas wird ja da geöffnet) ausgelagert wurde, diese Datei natürlich auch...

Gruss
MichiM


  


Betrifft: Datei ist leider zu groß, hatte schon einige GELÖS von: Walter
Geschrieben am: 05.09.2004 12:22:08

Hallo Michi,
leider ist die Datei, obwohl ich schon Mappen gelöscht habe zu groß.
560KB.
Gruss Walter


  


Betrifft: AW: Datei ist leider zu groß, hatte schon einige GELÖS von: MichiM
Geschrieben am: 05.09.2004 13:27:03

zu groß??? 560 kb???
ich konnte 2,1 MB ohne Probleme hochladen...
Kann natürlich auch sein, dass beim Redesign die Größe bergrenzt wurde (zwar unvorstellbar - aber nicht unmöglich).

Ansonsten schick mir mal die Datei als email
MichiM(at)habmalnefrage.de

Gruss
MichiM