Wie combobox vba werten fllen

7 Antworten zur Frage

~ raussucht und in einer Word datei ausgibt. Wozu braucht man da VBA Ist doch eine ganz stinknomale Aufzählung. Ist doch eine Standardfunktionalität ~~ Aufzählung. Ist doch eine Standardfunktionalität in Word. Ich hab ne Excel.
Bewertung: 5 von 10 mit 1337 Stimmen

Videos zum Thema
Video

Wie in VBA Programmieren das in Word Nummeriert wird?

Es sollen einzelne Überschriften dann auch Nummeriert erstellt werden.
1. Description
text
°°2. Evolution°°
Kein VBA nötig:
Markiere alle Überschriften als "Formatvorlage Überschrift 1"
Gehe auf "Format", "Formatvorlagen und Formatierung."
Wähle rechts an der Überschrift 1 am Pfeil nach unten "Ändern"
Knopf "Format",
Nummerierung.
Registerkarte "Nummerierung"
Und fertich is
Ich will nix im Word ändern. es soll durch ein Makro einfach einfügen in einer Word datei.
Ich gib ne nummer ein z.B. "1" und dann kommt ne Überschrift mit 1. Description dann kommt ne beschreibung. und drunter soll dann die nächste Überschrift kommen mit 2. Evolution und ich gib lediglich einmal ne zahl ein bei nem eingabefenster wo sich dann das Makro die informationen zu dieser zahl aus ner tabelle raussucht und in einer Word datei ausgibt.
Wozu braucht man da VBA
Ist doch eine ganz stinknomale Aufzählung. Ist doch eine Standardfunktionalität in Word.
Ich hab ne Excel Tabelle. dort in den verschiedenen Zellen sind Beschreibungen. entwicklungen usw. aufgelistet.
wenn man das Makro startet wird word geöffnet und es soll automatisch ein Header footer und halt verschiedene überschriften eingefügt werden. und dann eben bei verschiedenen nummern soll dann die entsprechende beschreibung usw. eingefügt werden.
ist es n bisschen verständlicher?
allen für die Antworten.
werd mich gleich nochmal hinhocken und mir des anschauen.
2. Evolution
soll es eigentlich heißen.

Wie kann ich eine Combobox in VBA mit Werten füllen?

Hallo, ich programmiere in VBA etwas und nun bin ich an einem Punkt angelangt, an dem ich nicht weiß wie ich ihn lösen könnte. Ich habe eine Userform erstellt und dort gibt es eine Combobox. Wenn man dort einen Wert auswählt, wird dieser in einer Tabelle mit Datensätzen im Hintergrund gefiltert. Eine weitere Combobox erscheint, und diese soll nun mit den Werten gefüllt werden, die beim bereits gefilterten in einer anderen Spalte übrig bleiben. Die gleichen Wörter können dort auch noch öfter vorkommen. Also ich filtere zum Beispiel als erstes nach Nahrungsmittel und in der Combobox danach sollte dann Käse, Gemüse, Obst etc. zu wählen sein. Nun meine Frage: Wie kann ich aus einer bereits Gefilterten Tabelle Werte die übrig geblieben sind für die Initialisierung meiner Combobox verwenden? schon!
PS: Ist in Excel und nicht Access
Du kannst die Eigenschaft Sichtbar der Zeile abfragen und damit prüfen, ob sie im Filter ausgeblendet ist. Beispielsweise: Sub formladen()
For i = 1 To Cells.End.Row
If Cells.Value "" And Rows.Hidden = False Then UserForm1.ComboBox1.AddItem i, 2
Next
UserForm1.Show
End Sub Hier wird auf die Spalte B eingelesen.

Excel VBA wie kann ich bei einer Combobox die Rowsource filtern?

Hi nach langer Zeit hab ich mal wieder eine VBA Frage,
und zwar:
Ich habe eine Combobox, die auf eine Tabelle zurückgreift und von dort Daten holt. ich bin schon so weit, dass wenn man einen Buchstaben eingibt sich das Dropdownfeld öffnen und zu dem Wort springt, welches den selben Text enthät wie die Eingabe in der Combobox.
Nun versuche ich aber die ganze Zeit, dass sich bei dem Dropdownmenü NUR die passenden Begriffe auflisten.
Bsp:
monentan:
Eingabefeld: Aut. Dropdown: Zebra, Flasche, Marmelade, Automobil, automatisch, Automat.
wie es eigentlich sein soll:
Eingabefeld: Aut. Dropdown: Automobil, automatisch, Automat
Also es sollen nur Bergriffe im Dropdownmenü gezeigt werden die auf die Eingabe passen. wäre richtig cool wenn da jemand ne Idee hätte
für das Lesen meiner Frage.
Soweit ich weiß, ist das mit Bordmitteln nicht möglich. Um die anderen Einträge auszusortieren, müsstest du die ComboBox neu füllen und danach neu aufklappen.
Vielleicht reicht es ja auch, die Sorted-Eigenschaft der ComboBox auf True zu setzen? Dann stehen die Begriffe mit gleichen Anfängen hintereinander.
VBA Excel - Wie trage ich aus einer ListBox den jeweiligen Eintrag in bestimmtes Feld
Ich habe eine Userform mit diversen Kontrollkästchen, Textboxen und Listboxen. Jedes Element ist einem bestimmten Feld, in der ersten leeren Zeile, in einer Exceltabelle zugeordnet. Soweit klappt alles. Jetzt habe ich aber eine ListBox mit mehrern Einträgen und jeder Eintrage soll in seine eigene bestimmte Spalte in der jeweiligen ersten leeren Zeile. Bei allen versuchen hat er die Einträge nur nebeneinander geschrieben aber ohne lücken.
Bsp.: x 10 - soll Spalte C; o 20 - soll Spalte D; x 30 - soll Spalte E; usw.
in diesem Fall wäre in Spalt C und E ein Eintrag. Der Eintrag soll aber als 1 oder 0 eingetragen werdenDim intErsteLeereZeile As Long intErsteLeereZeile = ActiveSheet.Cells.End.Row + 1 ActiveSheet.Cells.Value = Me.ComboBox1.Value & "." & Me.ComboBox2 & "." & Me.ComboBox3 ActiveSheet.Cells.Value = Me.TextBox1.Value ActiveSheet.Cells.Value = Me.TextBox2.Value ActiveSheet.Cells.Value = Me.TextBox3.Value Dim i As Integer Dim strAuswahl As String For i = 0 To ListBox1.ListCount - 1 If ListBox1.Selected Then If strAuswahl = "" Then strAuswahl =ListBox1.List Else strAuswahl = strAuswahl & "; " & ListBox.List End If End If Next i ActiveSheet.Cells.Value = strAuswahl So sieht es Beispielhaft bis jetzt aus.
Hat jemand eine Idee?
mit
strAuswahl = strAuswahl & "; " & ListBox.List
erzeugst du eine mit ";" getrennte liste, mit
ActiveSheet.Cells.Value = strAuswahl
schreibst du diese in eine einzige zelle, in spalte 5. worüber wunderst du dich? in der for-schleife musst du gleich die zellen bestücken, dazu muss auch die spalte variabel sein und hochgezählt werden.
Sorry hab vergesse zu erwähnen, dass das der Code davor ist. Das war jetzt nicht mein Lösungsversuch, sondern in dem Fall sollte die ausgewählten Punkte der ListBox mit einem ";" getrennt werden
habe jetzt kontrollkästchen in einen frame gepackt. erfüllt auch seinen sinn. aber
Excel VBA /wie kann ich die Zellen in format Zahl und Währung benutzen?
hier meinen Formatbereich: Dim intErsteLeereZeile As Long With ActiveSheet intErsteLeerZeile =.Cells.End.Row + 1.Cells.Value = CDate.Cells.Value = CDate.Cells.Value = Me.cboAusführungsland.Value.Cells.Value = Me.cboBearbeiter.Value.Cells.Value = Me.cboBereich.Value.Cells.Value = Me.TxtBestllNr_Kommentare.Value.Cells.Value = Me.txtKunde.Value.Cells.Value = Me.txtKundenanfragenr.Value.Cells.Value = Me.txtKurzbeschreibung.Value.Cells.Value = Me.txtPreis.Value intErsteLeerZeile, 11intErsteLeerZeile, 15intErsteLeerZeile, 2intErsteLeerZeile, 10intErsteLeerZeile, 1DIE ZELLE HIER SOLL IM FORMAT ZAHL UMGEWANDELT9
End With
End Sub
PS: Cells müsste sich sowieso immer auf die Zellen des aktiven Sheets beziehen. "With ActiveSheet" müsste also überflüssig sein.
Und für nen normalen Zahl wie soll das lauten?.Cells.Value = ->hier sollte das Angebotsnummer als Zahl in der form 001 gezeigt werden.
Suche mal nach den Konvertierungsfunktionen. Fangen alle mit C an. Für Ganze Zahlen kannst du CInt verwenden.
Nur wenn du ein benutzerdefiniertes Format verwenden willst, kommst du mit den Konvertierungsfunktionen nicht weit. Dann musst du das Format über eine Eigenschaft der Zelle definieren. War ich aber zu faul, jetzt nachzuschauen, weil für deine Zwecke die Konvertierungsfunktionen reichen.
Excel/VBA: Wie kann ich eine bestimmte Schleife erstellen?
ich benötige ein Makro in Excel, welches folgendes erledigt:
Ich habe eine Mappe in der sich viele Zeilen befinden. Und am Ende eine Spalte, welche eine Summe gibt. Alle Zeilen mit 0 sollen nun 1 mal in ein neues Tabellenblatt kopiert werden und alle mit Zeilen mit 0+x sollen x mal kopiert werden. Die Schleife soll also von oben nach unten durchlaufen und die Zeilen kopieren.
Falls eine Zeile leer ist, soll diese nicht kopiert werden.
Könnt ihr mir da helfen?
gilt für Zeile 2 bis 28 bis und von B Spalte
Wie schreibe ich eine korrekte Excel VBA?
Wie schreibe ich eine Excel VBA und wann benutze ich dieses Zeichen: ' Da ich eine für eine Berechnung etwas programmieren muss aber leider das zum ersten mal mache habe ich einige schwierigkeiten. Ich weis nicht warum das manchmal blau und manchmal grün erscheint und wie ich die richtigen werte range value seps etc zuornen kann und schreiben soll.
Ich kann Dir da auch die Tutorials von Peter empfehlen, der macht das imho sehr gut und launig:
Online - Excel Programmierung VBA Makro: Grundlagen
Das Hochkomma (') ist übrigens das Kommentar-Zeichen, das heißt, alles was in der Zeile darauf folgt wird vom Editor ignoriert. DAS wird dann zur Kennzeichnung GRÜN dargestellt.
Man nutzt das, um Bemerkungen in das Programm zu schreiben, damit man selbst - später - oder auch Andere denn Sinn und Ablauf des Programms leichter verstehen können.
Z.B. kann man hinter eine Variablen-Deklaration schreiben, wozu diese Variable genutzt wird.
Wenn Du ein erstes Programm geschrieben hast und Probleme auftreten, kannst Du das auch gerne hier einstellen und ich/ wir schauen mal, was wir machen können.
Ich will preise berechnen und zwar von einer stückzahl 100 biss 4000 in 10er schritten ist das korrekt eingetragen?:
actStueckzahl = Step = 10 GefStueckzahl = Range.Value
DAS hat mit VBA NICHTS zu tun!
Du wirst Dich schon mit VBA beschäftigen müssen, bevor Du versuchst ein Programm zu schreiben, da kommst Du nicht drumherum.
Sub Preisberechnungsschleife()
Dim i, j, Stückpreis
j = 1
Stückpreis = 1.25
For i = 100 To 2000 Step 100
j = j + 1
ActiveSheet.Cells.Value = i
ActiveSheet.Cells.Value = i * Stückpreis
Next
End Sub
Der Kern ist eine For.Next -Schleife. hab den Step erst mal auf 100 vergrößert und die max Stückzahl auf 2000 reduziert
Überschriften kannst du in Zeile 1 eintragen.
das schreibt Dir in Spalte A =.Cells ab Zelle 2 die Stückzahlen
Und in Spalte B =.Cells die zugehörige Preissumme.
Versuch das erst mal zu verstehen und an Deine Vorgaben anzupassen, versuch auch, das waagrecht darzustellen, als ersten Einstieg
denk dran, dass Du aus einem leeren Blatt heraus startest, das
Makro überschreibt die Daten in Spalte A:A und B:B.
Die Ausführung eines Makros kann NICHT RÜCKGÄNGIG gemacht werden:
wenn was schief gelaufen ist, hilft nur schließen ohne Speichern und damit der Verlust von allem noch nicht gespeicherten.
Also: VORHER SPEICHERN!
im Übrigen schließe ich mich der Meinung der anderen an: leg Dir erst mal Grundlagen zu, sowas lernt man wie eine Sprache: Wörter , Grammatik und viel, viel Übung
Du erhältst das gleiche Ergebnis übrigens ohne Makro und viel einfacher , wenn Du in dem Blatt
nach A1 die Schrittweite schreibst,
in A2 den Anfangswert einträgst,
in B1 den Einzelpreis je nach Ländereinstellung Komma oder Punkt, aber VBA ist englisch und akzeptiert nur den Punkt als Dezimaltrennzeichen, liest aber aus den deutschen Seiten die mit "," eingetragenen Zahlen richtig aus.
Im Gegenzug ist bei englischen Seiten das Tausenderkennzeichen das "," , was manchmal zu Verwirrung führen kann
hier die Grundlagen:
cmp-online.de: VB/VBA Grundlagen
oder
ertls.de/dokumente/vbaexcel1.pdf



excel
Wie geht eine Formel in OpenOffice Calc, in der ich eine Spalte ohne Leerzeilen in eine andere …

- markieren und nach unten ziehen.  LO scheint bei Matrixformeln beide zu benötigen zum Ausfüllen längerer Bereiche. -- Internet ein paar Formeln für Excel gefunden, die bei OpenOffice Calc jedoch nicht funktionieren. in Analogie zu xl dieser --Angenommen man hat in der Spalte A 100 Zeilen mit verschiedenen Werten. Einige Zeilen sind aber komplett leer. Wie lautet die -


word
Wo finde ich das französische Zeichen "i mit Dach"?

- im Netz unter "ASCII-Zeichen"; bin aber nicht fündig geworden. Weiß jemand ad hoc, wo ich das finden kann?! Bitte: -- übrigens i circonflex. Es kann ganz einfach so erstellt werden wie es koopikoop2 erklärt hat. Etwas komplizierter: ALT + -


programmieren
Mehrere Variablen gleichzeitig einen Wert zuweisen?

- einen Array lösen: int Zahl;//Ein Array mit 7 Plätzen. for(int i=0;i- helfen Tom1324 Kann kein C# und bin mir nicht sicher wie es dort aussieht, aber unter C++ Würde man so etwas sehr -