Basiccode als Makro in einer Excel-Arbeitsmappe?

Hallo ersteinmal an Alle! :smile:

Folgendes Problem:
Ich möchte dass bei Eingabe in z.B. Zelle A1 - die Ausgabe in z.B. Zelle A2 geschrieben wird.

Quellcode habe ich in Basic

10 Print „inv(BETA)“
20 Input B
30 V=0.5
40 A=1/TAN(V)-1/(V+B)
50 if ABS(A)>0.000001 then V=A+V: GOTO 40
60 BETA=(A+V)*57.29577951
70 Print „BETA=“;BETA;"Grad
80 End

Zeile 10 währe dann z.B. Zelle A1
Zeile 70 währe dann z.B. Zelle A2

Kann mir bitte einer von Euch helfen?!

Danke schon mal im Voraus. :smile:

Hallo,

also dafür VBA zu verwenden halte ich für überdimensioniert, aber gut.

Im Prinzip kannst du die PRINT und INPUT Anweisungen mit den jeweiligen Zelladressierungen ersetzen. Sieht dann demnach so aus:

diese sub kannst du für das Event SheetChange nehmen.

sub Irgendwas
 B = Activesheet.Range("A1")
 V = 0.5
label1:
 A=1/TAN(V)-1/(V+B)
 if ABS(A)\>0.000001 then 
 V=A+V
 GOTO label1
 end if
 BETA=(A+V)\*57.29577951
 activesheet.range("A2") = "BETA=" & BETA & " Grad"
end sub

Ebenso kannst du es mit Formeln und Excel4 Makros (Definitionen) verwenden.

LG

also dafür VBA zu verwenden halte ich für überdimensioniert,
aber gut.

Hallo Christoph.

Ersteinmal vielen Dank für die schnelle Antowrt!

Überdimensioniert?! Na ich kann ja später evtl. den Quellcode erweitern oder noch weitere Berechnungen einfügen … egasl … :smile:

Funktioniert!
Mit eigener Recherche in Excel-Hilfe kamm bei mir dies raus:

**wert = Worksheets(„Tabelle1“).Range(„L5“).Value
V = 0.5

Do
A = 1 / Tan(V * Application.Pi / 180) - 1 / (V + wert)

If Abs(A) > 0.000001 Then
V = A + V
End If

Loop Until Abs(A)
Es gibt zwar noch einen Fehler, aber der muss irgendwo in der Formel liegen …

Also noch einmal vielen DANK! :smile:

mfg

pegas357**

Definiere dir einen Bereich über Einfügen->Namen->Definieren.
Nennen wir ihn „Suchbereich“. Dieser bezieht sich auf:

=INDIREKT(Tabelle1!$A$1&"!"&Tabelle1!$A$2)

In A1 steht der Reiter, in A2 der Zellbereich). Die Werte dieser beiden Zellen mußt du in Zukunft nur noch ändern.

Nun suchst du via SVERWEIS:

=SVERWEIS(B3;Suchbereich;2)

Ich brauche eine Formel die mir das komplette
Drop-Down Menü rüberkopiert.

Definiere dir nun den Bereich „Suchbereich2“, der sich auf

=BEREICH.VERSCHIEBEN(suchbereich;;;;-1)

bezieht. Nun setzt du die Gültigkeit der Zelle B3 auf „Liste“ und „=Suchbereich2“.

Beispieldatei:
http://rapidshare.com/files/402038173/Excel_Spa__.xl…

LG