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 CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Create a Database

Betrifft: Create a Database von: Marc
Geschrieben am: 19.11.2014 22:49:14

Hi all,

attached also excel file which is showing the database I would like to create. Basically I would like to add Products/ Region/ Countries into one Database.
On the left side of the excel I show how it could look like. But please let me know if you have a better idea.
So first I type the Product. Than I add how many regions this product will have. After that I add the countries. The inventory slots will be same for all countries. So basically if I sign up for 10, all countries under this product will get 10 inventory slots.

The database could be than created in the 2nd tap for example.

Thanks a lot for help.

Marc

https://www.herber.de/bbs/user/93887.xlsx

  

Betrifft: more information needed von: Frank
Geschrieben am: 20.11.2014 13:35:07

Hi Marc,

why don't you post this topic in a help community of your own language? Bad English in a German community might cause a lot of frictions on both sides.

Particularly I don't get the bit with the regions and the countries. Are there different countries per region? Your list of countries contains only 10 entries and funnily they are -in different compositons- part of every Region (as shown in the database-like part).

Furthermore I don't get the hang of the inventory slots. Where do they show up in the database?

As for the transfer of the data into the database: Why are there 4 separate 'Add'-buttons? I think 1 would be sufficiently. I'd like to question the need of 4 dropdowns to specify the product. 1 would be sufficiently here as well.

A click onto a 'OK'-button should count the used lines of your database-sheet

ll=Sheets("Database").range("A1").End(xlDown).Row

and copy the entries of the Dropdown cells into the target cells.
Sheets("Database").cells(ll,1).value=TextBox1.Text
Sheets("Database").cells(ll,2).value=TextBox2.Text
...
Regards,
Frank


  

Betrifft: AW: more information needed von: Marc
Geschrieben am: 20.11.2014 18:06:35

Hallo Frank,

danke fuer die Hilfe. Glaube nicht das es schlechtes Englisch ist :-), aber ich kann auch auf Deutsch schreiben.
Ich versuche eine Datenbank zu bauen. Erst moechte ich einem Produkt einen Namen geben. Das ist dann zum Beispiel Produkt 1. Dem Produkt moechte ich die Regionen zufuegen. Ich habe feste 5 Regionen, aber vielleicht werden nur 2 Regionen fuer das Produkt gebraucht. Dann sollen unter diese Regionen die Laender zugefuegt werden. Auch hier habe ich feste Laender aber nicht alle werden unter diesen Regionen gebraucht.

Deshalb habe ich all diese verschiedenen Add buttons eingebaut.

Aber jedes Land bekommt nur eine fest geschriebene Anzahl von " shelfs " Diese sind fuer alle Laender fuer dieses Produkt festgeschrieben. Keine Ausnahmen. Spaeter bekommen diese " shelfs " verschieden Werte zugefuegt. Maximal 10 wie gesagt.

Hoffe Du kannst mir helfen.

Danke,

Marc


  

Betrifft: Noch Fragen offen, aber... von: Frank
Geschrieben am: 20.11.2014 19:11:46

Hallo Marc,

gemäss Deiner Beispieltabelle, wie später die DB aufgebaut sein soll, reicht eine TextBox für das Produkt und 5 TextBoxen für die Region. Eventuell noch eine TextBox für die "Shelfs" - da die aber in der Beispiel-DB nicht vorkommen, bin ich da nicht so sicher, auch weil sie ja sowieso für das jeweilige Land unveränderlich sind: Land und Produkt festgelegt = "Shelf" definiert. Und dann ein Add-Button, um die Übernahme in die Liste zu starten.
Dessen Code:

ll=Sheets("Database").range("A65000").End(upDown).Row
for i=2 to ll
   Sheets("Database").cells(ll,1).value=TextBox1.Text
   Sheets("Database").cells(ll,2).value=TextBox2.Text
   ...
next
Grüsse,
Frank

P.S.: Dann vielleicht Indian English, da sieht man sowas öfter:
... Than I add ...
... could be than created ...


  

Betrifft: AW: Noch Fragen offen, aber... von: Marc
Geschrieben am: 22.11.2014 19:55:40

Hallo Frank,

Danke. Das ist eine gute Idee. Ich denke ich schreibe Dir noch ein paar Hintergrund Informationen. Ich versuche eine Datenbank aufzubauen. Und ich brauche praktisch 3 Bloecke:

1.) Aufbau der Datenbank.
2.) Datenbank selber und die Eingabe der 10 einzelnen Information.
3.) Analyse

Ich schicke Dir nochmal ein excel file wo ich die Datenbank schon aufgebaut habe. Jetzt soll die Eingabe der 10 verschiedenen Zusatzteile erfolgen. Dafuer hab ich auf der rechten Seite die Eingabefunktionen gemacht. Wenn man auf " Add " drueckt soll der Text in die jeweilige Spalte eingefuegt werden ( Richtige Region + Country ). Wenn 1-2 schon voll sind, dann auf 3.
Falls alle 10 schon voll sind, dann sollte eine Message erfolgen wie " Alle shelfs sind schon besetzt ".

Ich hoffe das hilft ein wenig, um Dir zu zeigen was ich vorhabe.

Danke!!

Gruss,

Marc

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


  

Betrifft: AW: Noch Fragen offen, aber... von: Crazy Tom
Geschrieben am: 22.11.2014 21:19:12

Hallo Marc

so habe ich es getestet

Private Sub CommandButton1_Click()
    Dim Suchergebnis As Range
    Dim rngBereich As Range
    Dim intZielSpalte As Integer
    With Worksheets("Product 1")
        Select Case .ComboBox2.Text
            Case "Region 1"
                Set rngBereich = .Range("B2:B22")
            Case "Region 2"
                Set rngBereich = .Range("B24:B42")
        End Select
        Set Suchergebnis = rngBereich.Find(.ComboBox1.Text, LookIn:=xlValues, lookat:=xlWhole)
            If Not Suchergebnis Is Nothing Then
                intZielSpalte = .Cells(Suchergebnis.Row, 13).End(xlToLeft).Column + 1
                If intZielSpalte >= 13 Then
                    MsgBox "alles voll"
                Else
                    .Cells(Suchergebnis.Row, intZielSpalte).Value = .TextBox1.Value
                End If
            End If
    End With
End Sub

denke aber daran, dass die Länder in den Comboboxen auch so benannt sind wie in Spalte B
auffallend grade bei UK --> U.K.

MfG Tom


  

Betrifft: AW: Noch Fragen offen, aber... von: Marc
Geschrieben am: 24.11.2014 07:45:04

Hallo Tom,

Danke. Laeuft super. Ich hab zwei kleine Zusatzfragen:

Ich hab noch einen global slot und 3 regional slots. Dort sind keine 10 Teile hinzuzufuegen, nur 1 und 3. Kann das noch eingefuegt werden?

Dann waere es super, wenn ich mehrere Produkte hier einfuegen koennte. Ich hab noch eine Produktabfrage eingefuegt.So kann ich mehrere Produkte ansprechen.

Excel file attached.

Danke!!

Gruss,

Marc

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