PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Excel Formeln und Steuerelemente



En´til´za
13.03.07, 17:12
So, ich hab da mal ne Frage.

Ich suche eine Steuerelement mit dem ich erstmal folgenes erreichen kann. Ich will draufdrücken und dann ist der Button makiert. Im Button steht was. "Baum". Wenn "Baum" = Ja sein soll, dann drücke ich auf "Baum". In einer Zelle wird dann ein Wert ausgeworfen den ich dann zu weiteren berechnung verwenden kann.

Jetzt die Frage. Wie mache ich das mit dem Baum??


Danke

JoeIntel
14.03.07, 08:36
Ich weiß nicht wie es den anderen geht, aber ich hab die Frage nicht ganz verstanden. Nach allem was ihr jedoch beschreibt, wird das nur mit dem Programmieren einer Funktion in Visual Basic gehen. So denke ich mal.

Joe

Jorrig
14.03.07, 09:25
Da kann ich in beiden Punkten nur zustimmen.

En´til´za
15.03.07, 14:22
Okay....ich will im grunde einen Button haben, wie der Fett button hier im Forum, als Beispiel. Wenn ich den drücke dann ist halt "Fett", wenn nicht dann ist normalschrift.

Besser jetzt?? Sonst versuch ich es nochmal :)

Morenga
15.03.07, 14:23
So gebt es doch zu. Ihr sucht den Button, mit dem Ihr die Schrift "bunt" machen könnt... :teufel:

*duckundweg*

En´til´za
15.03.07, 14:26
So gebt es doch zu. Ihr sucht den Button, mit dem Ihr die Schrift "bunt" machen könnt... :teufel:

*duckundweg*


Dafür hab ich doch Markos.. :D

Preussenhusar
15.03.07, 15:06
Dafür hab ich doch Markos.. :D

Markos ?
Ferdinand Markos ? Ich dachte der sei tot :???:

Wie es auch sei. Ich mag Windoof Office nicht.

PH

Jorrig
15.03.07, 15:28
Wie wärs mit Strg+B?

En´til´za
15.03.07, 16:28
Wie wärs mit Strg+B?


Das was ja nur ein beispiel.

Also..ich habe eine Tabellenblatt. Auf das Tabellenblatt sollen buttons damit man einfach anklicken kann was man haben will. Farben Rot|Grün|Blau. Man klickt an und dann ist blau makiert. Dabei wirft er in einem anderen Tabellenblatt in einer Zeile folgenes Aus

Rot 0
Grün 0
Blau 1

Und damit wird dann weitergearbeitet so das ich am schluss in einer gesamtübersicht angeben kann. Auto ist Blau mit 17 Zoll reifen..usw

Jorrig
15.03.07, 16:44
Kannst du nicht die Selektionsfelder nutzen? D.h., du hast eine Zelle "Farbe:" und daneben eine Zelle mit einem Pulldown-Menü. Dahinter legst du dann feste Werte, z.B. Rot, Gelb und Blau, und der Anwender kann dann auswählen.
Auf dem zweiten Blatt kannst du dann nach den Werten fragen, das aktualisiert er ja dann dynamisch. Du kannst überall nach dem Wert des Feldes fragen, klar. Du kannst die Zelle bei der Auswahl dann sogar färben, das habe ich selbst schon gemacht.

JoeIntel
16.03.07, 08:33
Werter En´til´za,

entweder Ihr kommt mir Jorrigs Lösung klar oder Ihr erklärt mal ohne die programmiertrechnischen Feinheiten was euer Programm machen soll. Das was Ihr bis jetzt beschrieben habt geht sicherlich in Excel zu lösen jedoch stellt sich mir die Frage ist Excel das geeignete Werkzeug? Denn es klingt eher nach einer Datenbankanwendung, auf jeden Fall auf den ersten Blick und da werdet Ihr mit Execl unter Umständen an die Grenzen stoßen. Deswegen empfehle ich mal das was Euer Programm machen soll grob zu beschreiben. Denn man kann vieles machen aber man sollte es mit dem geeigneten Werkzeug machen besonders in der Informatik.

mfg

Joe

En´til´za
16.03.07, 10:30
Mit dem Pulldown menü ist das eine möglichkeit aber das habe ich verworfen weil es nicht das richtige ist.

Also ich programmiere gerade ein Programm zur berechnung von Versicherungsbeiträgen. Um es dem Vermittler so einfach wie möglich zu machen soll dieser bei einer Versicherung einfach nur noch anklicken was der Kunde will.

Will der Kunde die Optimaldeckung dann soll dieser einfach auf das Feld Optimal klicken und schon wird mit anderen Werten gerechnet. Dazu noch nen Selbstbehalt? Einfach draufklicken. Wobei ein Klick hier bedeutet das dieses ausgewählt ist, wenn es nicht angeklickt ist rechnet der dann ohne Selbstbeteiligung bzw. mit der Basisdeckung.

von Stollberg
16.03.07, 12:50
Wenn du das richtig machen willst, lässt du auch gleich die Kundendaten erfassen.
Somit hast du auch gleichzeitig eine Kundenverwaltung.
Das bedeutet dann aber: Access oder vergleichbares.

JoeIntel
16.03.07, 14:47
Wenn es sich nur um eine Versicherungsart handelt kann man das sicher mit Excel machen. Ich denke mal mit ein paar vb Funktionen ist das ohne weiteres machbar. Soll das Programm jedoch verschiedene Versicherungstypen oder auch eine Kundendatenverwaltung beinhalten empfehle ich, wie der ehrenwerte Herr von Stollberg, eine Datenbank. Hier muss man natürlich aufpassen das man die Tabellen richtig plant (normalisiert). Dann wird einem ein Großteil der Arbeit von der Datenbank abgenommen, auf jeden Fall die lästige Auswahl von zusätzlichen Optionen.

Das hilft euch natürlich nicht bei dem aktuellen Problem jedoch müsste man erst mal wissen wie weit ihr im VB oder anderen Programmiersprachen (vornehmlich C++ ;) ) bewandert seid. Ich stell mir das auf jeden Fall so vor Button einbauen, dahinter eine Funktion zur Manipulation der Zellen legen, evtl. noch einen Inputdialog und fertig ist der Lack.

Joe

JoeIntel
16.03.07, 15:14
Mir ist noch immer nicht ganz klar ob es Euer Problem mal trifft. Ich hab trotzdem mal eine kleine Funktion gebastelt mit der man ein Feld in Excel manipulieren kann.



Sub Schaltfläche1_BeiKlick()
'Mal eine kleine Variable definieren
Dim a As Variant
'aus dem Feld B5 den Wert holen und zu diesem Wert 5 hinzuaddieren
a = Worksheets("Tabelle1").Range("B4").Value() + 5
'und jetzt wieder reinschreiben
Worksheets("Tabelle1").Range("B4").Value() = a
End Sub


Ist ganz einfach sollte es unter eurer Wüde liegen und ich euer Problem falsch einschätzen vergesst es und nehmt es mir nicht krumm.

Joe

En´til´za
25.03.07, 13:06
Mir ist noch immer nicht ganz klar ob es Euer Problem mal trifft. Ich hab trotzdem mal eine kleine Funktion gebastelt mit der man ein Feld in Excel manipulieren kann.



Sub Schaltfläche1_BeiKlick()
'Mal eine kleine Variable definieren
Dim a As Variant
'aus dem Feld B5 den Wert holen und zu diesem Wert 5 hinzuaddieren
a = Worksheets("Tabelle1").Range("B4").Value() + 5
'und jetzt wieder reinschreiben
Worksheets("Tabelle1").Range("B4").Value() = a
End Sub


Ist ganz einfach sollte es unter eurer Wüde liegen und ich euer Problem falsch einschätzen vergesst es und nehmt es mir nicht krumm.

Joe

Nicht schlecht....aber wo setze ich dieses ein??? Was muss ich erst starten um das eingeben zu können???

JoeIntel
30.03.07, 14:44
Bin gerade aus meinem (hoffentlich) wohlverdienten Urlaub zurück und habe deswegen erst euer Posting gelesen.

Normalerweise geht es so das man bei Excel die Symbolleiste "Formular" nun ja dann bastelt man einen Button hin. Normalerweise sollte dann bei Eigenschaften einzene Makros zuzuordnen sein. Man nehme z.B. bei klick un schreibt sein makro. Auf jeden Fall funktioniert es bei der alten Office 2000 version von mir so es kann sein das MS inzwischen einiges "verbessert" hat. Da ich inzwischen auf Openoffice umgestiegen bin.

Joe

Azmodan
02.04.07, 08:11
Müssen Makros sein?
Ich denke nicht.
Jedenfalls habe ich das Problem, in meiner Arbeitsmappe ist ein Makro, und kanns nicht mehr löschen :(
Gibt´s da eine Lösung?

JoeIntel
02.04.07, 17:19
Ich denke das was der werte En´til´za machen möchte wird sauber nur mit einem Makro zu lösen sein so wie er es bis jetzt beschrieben hat. Ich lasse mich gern eines besseren Belehren glaube jedoch nicht daran. Wie schon gesagt glaube ich auch nicht daran das Excel für das Problem die richtige Anwendung ist und für meinen Teil bin selbst kein großer Fan von Excel-Makros in 99.999999... % der Fälle ist ab dem Zeitpunkt wo man über ein Makro nachdenkt auch der Zeitpunkt da die Entwicklungsumgebung zu wechseln. Es gibt ja viele Alternativen (C;C++;C';Postgres;MySQL;QT;PERL;Python;Java;Acess;PHP usw.) was nur wenn man sich bei den besagten Alternativen nicht auskennt.

Jetzt noch mal kurz zu eurer Frage es sollte schon eine Lösung für die Entfernung des Makros geben schon mal den VB-Editor benutzt? Sonst einfach mal mit OpenOffice öffnen oder noch besser reinkopieren. Ich hätte da noch ein paar Ideen aber da sollte man das Problem genauer beschreiben.

Joe

Azmodan
03.04.07, 08:45
Sorry,
ich starte das excell sheet, zuerst meckert er dass die makros deaktiviert wurden weil sicherheitsstufe zu hoch. Gut so.

Jetzt nahm ich Euren Hionweis mit dem VB-Editor (noch nie gesehen). Finde die Projektansicht und konnte dort das Modul sehen und löschen. Danke!
Ich habe das Makro irgendwie über "Makro aufzeichnen" erstellt.

Irgendwie wollte, ich nur die Werte von vorherigen Sheets in ein Pulldownmenu zaubern. Aber hab´s nicht geschafft. Und irgendwie hab ich halt mal so durchgespielt. Und eben das Makro aufzeichnen auch verwendet.
Ich habe keine grösseren Kenntnisse von Excell.

Und meine Frage war keine Kritik an der Lösung für Enti, sie war eher allgemein in den Raum gestellt. Entschuldigt, wenn Ihr es anders verstanden habt.

Also, kann ich im Excell auch Drop downs und Zellen von anderen Seiten befüllen ohne Makros? (So hätte die Frage richtigerweise dort stehen sollen)

Jorrig
03.04.07, 08:50
Dropdowns weiß ich aus dem Kopf nicht, aber Zellen aus anderen Mappen zu nehmen ist einfach: "=Mappe2!A1" gibt den Wert aus Mappe2, Feld A1 wieder.

En´til´za
03.04.07, 09:59
Formular
Kombinationsfeld

da kannst du ein dropdownmenü wählen. In den eigenschaften musst du nur noch festlegen welche Bereiche ausgewählt werden sollen. Einmal den Text welcher im Menü stehen soll und einmal das Feld in dem der ausgabe wert erscheinen soll!

Azmodan
03.04.07, 11:05
Ah, danke. Für das gehört das 2. Feld. :)

En´til´za
03.04.07, 11:37
Ah, danke. Für das gehört das 2. Feld. :)


Sorry...das ist kein Deutsch..schnall i nit!

JoeIntel
03.04.07, 12:56
@Azmodan
Also ich hab das nicht als Kritik aufgefasst. Ich wollte nur noch mal erläutern warum ich diesen Vorschlag gemacht habe.

Euer Problem scheint ja inzwischen gelöst zu sein. Nur noch eine Anmerkung wenn man Makros aufzeichnet wandelt Excel die mehr oder weniger automatisch in VB um. Dies natürlich in einen nich besonders gut lesbaren code.

Joe

Azmodan
04.04.07, 08:13
@ En´til´za: Irgendwie check ich es ned. (auch kein gutes Deutsch)
Ich machte mir eine Formularansicht, dort setzte ich ein Kombinationsfeld hinein und da gab es 2 Felder, deren Hintergrund ich nicht ganz verstand.

@ JoeIntel: Danke

Puh, habe mit VB schon seit Ewigkeiten nichts mehr getan :(

Und sehe gerade, ich brauche gar kein Formular für Buttons. Ach Gott, ist Excell so kompliziert und zu einfach?
Ich wollte nur eine einfache Berechnung mit Auswahlmöglichkeiten durchführen ohne gleich ein C-Programm schreiben zu müssen. (Was derzeit eh nicht geht, da ich keine Umgebung mehr installiert habe).

Dieses Dialogformular, das man erstellen kann, ist das eine kleine VB Appl?
Ist jedes VB Coding ein Makro?

Dr. Evil
04.04.07, 15:24
@ En´til´za: Irgendwie check ich es ned. (auch kein gutes Deutsch)
Ich machte mir eine Formularansicht, dort setzte ich ein Kombinationsfeld hinein und da gab es 2 Felder, deren Hintergrund ich nicht ganz verstand.

@ JoeIntel: Danke

Puh, habe mit VB schon seit Ewigkeiten nichts mehr getan :(

Und sehe gerade, ich brauche gar kein Formular für Buttons. Ach Gott, ist Excell so kompliziert und zu einfach?
Ich wollte nur eine einfache Berechnung mit Auswahlmöglichkeiten durchführen ohne gleich ein C-Programm schreiben zu müssen. (Was derzeit eh nicht geht, da ich keine Umgebung mehr installiert habe).

Dieses Dialogformular, das man erstellen kann, ist das eine kleine VB Appl?
Ist jedes VB Coding ein Makro?
VBA ist größtenteils mit VB identisch, jedoch ist VBA gegenüber VB in seinen Funktionen und in der Leistungsfähigkeit seiner Entwicklungsumgebung reduziert.
Somit kann man durchaus von einer kleinen VB Applikation sprechen, die in VBA als Makro bezeichnet wird.