online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon vba-noob vom 06.05.2022, 18:57 Options

brauche hilfe bei vba/excel Problem

hi,
also ich möchte mit vba eine Grafische Oberfläche bauen,wo man sozusagen aufmaße für einen bau eintragen kann. also tabelle sieht so aus: der kopf hat also bei mir d9-???zb k9 (jenach dem wieviele positionen man eintragen will) enthält halt positionen zb verlegen von 1,5 mm kabel.die spalte a1-?? zb a20(kommt wieder drauf an wieviele räume das aufmaß hat) enthält halt die räume in denen man installiert. nu möchte ich mit einer combobox die positionen in die excel tabelle eintragen lassen und dabei halt immer eine spalte nach rechts (schleife).diese eingetragenen daten sollen in der gleichen combobox aufgelistet werden. und zum anderen soll man mit na anderen combobox die räume (namen) auch in einer schleife von oben nach unten eintragen lassen können.auch das soll in der combobox zu sehen sein. UND NU mein hauptproblem ist mit einer dritten combobox werte in die jeweils richtige zelle einzutragen die ich über die ersten 2 auswählen will also raum und position.

für eure hilfe im vorraus danke

mfg christian


Antwort schreiben

Antwort 1 von Saarbauer vom 07.05.2022, 07:54 Options

hallo,

du solltest mal eine Beispieltabelle einstellen.
Ob das mit den Comoboxen so machbar ist ?

Gruß

Helmut

Antwort 2 von vba-noob vom 07.05.2022, 17:21 Options

http://www.file-upload.net/download-2497025/Mappe1.xlsm.html

hab hier einfach mal die datei hochgeladen...ist nur die tabelle um die es geht...da wo pos1,pos2 steht sollen die leistungen hin und da wo raum1,raum2 steht sollen die räume hin

Antwort 3 von nighty vom 08.05.2022, 09:15 Options

hi all ^^

eine combobox in abhaengigkeit hab ich zwar nicht,aber ein listenfeld in abhaengigkeit(zur zeit 1 zugtiefe)

nach dem selben prinzip ist die combobox aufzubauen

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    If Target.Column = 1 And Target.Row = 1 Then
        Dim suche As Range
        Set suche = Worksheets(1).Range("D1" & ":D" & Worksheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1).Find(Cells(1, 1))
        If Not suche Is Nothing Then
            With Range("B1").Validation
                .Delete
                .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=$E$" & suche.Row & ":$G$" & suche.Row
                .IgnoreBlank = True
                .InCellDropdown = True
                .InputTitle = ""
                .ErrorTitle = ""
                .InputMessage = ""
                .ErrorMessage = ""
                .ShowInput = True
                .ShowError = True
            End With
        End If
    End If
    Application.EnableEvents = True
End Sub  

Antwort 4 von nighty vom 08.05.2022, 09:22 Options

hi all ^^

noch kurz beschreibung

listenfeld spalte a + b

1 liste
D1-D3

Verzweigung weiterer 3 listen

D1=E1-G1
D2=E2-G2
D3=E3-G3

der einfachhalber habe ich die spalten als 1 verzweigung eingesetzt

sollten mehrere verzweigungen erfordert sein,sollte die structur zeilen orientiert sein

wie schon oben erwaehnt leicht portierbar auf eine combobox

gruss nighty

Antwort 5 von vba-noob vom 08.05.2022, 09:50 Options

öhm..kann man des nicht einfachen machen so in der art..mit na while wend schleife....und dann halt mit globalen variablen..für spalte zb variable a und für zeile zb variable b..und dann mit cells(b,a) ansprechen?

Antwort 6 von nighty vom 08.05.2022, 12:13 Options

hi noob ^^

welche tiefe der verschachtelung ist denn gefordert,kann mich ja mal probieren an comboboxen :-))

gruss nighty

Antwort 7 von vba-noob vom 08.05.2022, 15:00 Options

hi,nighty

was meinst du mit verschachtelung?

vieleicht noch was neues..es ist schon das tabellenblatt ausgewählt wo die tabelle drauf ist...nu hab ich wie gesagt 2 comboboxen wo halt in der einen die leistungen angezeigt werden(mit na while wend schleife),die andere listet die räume auf(auch mit while wend schleife)..jetzt brauch ich doch nurnoch iwie, weil ich in der ersten schleife variable a genommen habe und in der zweiten die variable b,sagen der textbox nehme cell(zeile,spalte) also(b,a) oder? funktioniert aber nicht....

gruss

Antwort 8 von Saarbauer vom 08.05.2022, 19:02 Options

Hallo,

das was du willst, geht aus meiner Sicht nur mit einem Makro

Gruß

Helmut

Antwort 9 von vba-noob vom 08.05.2022, 19:34 Options

hallo helmut,
verstanden was ich will hast du ja denke ich.....wenn das mit meiner methode nicht gehen soll,was eigentlich ganz einfach wäre,kannst du mir dann bitte sagen wie du das machen würdest? hab mir halt gedacht über die variablen das machen zu können hier mal meine prog für eine schleife:

Private Sub UserForm_Initialize()

Dim a As Integer, b As Integer
a = 4
While ActiveSheet.cells(9, a) <> "" '(schleife) solange in zeile darunter schreiben wie er werte hat
ComboBox2.AddItem ActiveSheet.cells(9, a)

a = a + 1
Wend
ComboBox2.ListIndex = 0

b = 15
While ActiveSheet.cells(b, 1) <> "" '(schleife) solange in zeile darunter schreiben wie er werte hat
ComboBox3.AddItem ActiveSheet.cells(b, 1)

b = b + 1
Wend
ComboBox3.ListIndex = 0
End Sub

a is halt die schleife für die spalten und b für die zeilen..nu wollt ich iwie cells(a,b).select....wobei a,b die variablen sind die man zuvor über die comboboxen wählt.. funzt aber net

mfg

Antwort 10 von vba-noob vom 09.05.2022, 12:24 Options

hat sich erledigt, hab mir selber geholfen..:)

Ähnliche Themen

Excel VBA -> Problem mit Zeile kopieren trotz Suche im Forum
jackhugo  04.11.2008 - 76 Hits - 4 Antworten

VBA Makro in Excel
aflk  01.12.2008 - 51 Hits - 1 Antwort

Excel VBA
Tonerl  27.04.2009 - 244 Hits - 7 Antworten

Excel (VBA) Mit 2 PC
Klapptnicht  20.07.2009 - 205 Hits - 5 Antworten

Excel - Makro sendmail Problem... Bitte um Hilfe.
Florian007  19.03.2010 - 309 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026