tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
500
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Uther Uther ist offline Mitglied Bronze
    Registriert seit
    Sep 2007
    Beiträge
    37
    Hallo,

    ich möchte untenstehenden Code automatisieren, so dass ich ihn nicht 9 mal eintippen muss. Im 2. Codefenster ist meine Lösung aber ich weiß nicht wie ich es deklarieren soll, damit es so klappt wie ich möchte. Vielleicht habe ich auch den falschen Lösungsansatz.

    Bitte helft mir mal auf die Sprünge, bin noch neu auf dem Gebiet.

    Vielen Dank für Hilfe

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    Dim g12, l12, zählerSp as Short
     
    If g12 < 0 Then
                If l12 > 1 Then
                    zählerSp = zählerSp + l12
                    l12 = 0
                End If
            End If

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    Dim g, l as '...keine Ahnung String geht nicht
    For i = 12 To 20
                g = "g" & i
                l = "l" & i
                If g < 0 Then
                    If l > 1 Then
                        zählerSp = zählerSp + l
                        l = 0
                    End If
                End If
            Next i
     

  2. #2
    Avatar von Konstantin Gross
    Konstantin Gross Konstantin Gross ist offline Mitglied Platin
    Registriert seit
    Sep 2003
    Ort
    nähe Kassel (Hessen)
    Beiträge
    703
    Wenn du String benutzen willst, musst du bei der Übergabe deiner Variable i ein ToString() anhängen:

    g = "g" & i.ToString();

    Bzw. ich weiß gerade nicht welche Schreibweiße VB benötigt, schau mal was Intellisense vorschlägt. Aber mal interessenshalber was hast du mit dem Code vor? Eventuell können wir dir dann Verbesserungsvorschläge machen.
     
    Internetseite:
    http://www.texturenland.de

    Blog:
    http://blog.texturenland.de

    Codesnippets:
    .NET-Snippets

    - Sollte ich bei einer Frage weitergeholfen haben, würde ich mich über eine positive Bewertung freuen -

  3. #3
    Uther Uther ist offline Mitglied Bronze
    Registriert seit
    Sep 2007
    Beiträge
    37
    Danke für den Tip, aber es geht nicht.
    Dim g, l as String
    g = "g" & i.ToString()
    Ungültige Konvertierung von der Zeichenfolge g12 in Typ Double. Das kommt als Fehlermeldung bei If g < 0 Then, obwohl nirgends was mit double deklariert wurde.

    l12 bis l20 sind berechnete Ganzzahlwerte von -60 bis 180, die Gegenwerte sind im gleichem Bereich g12 bis g20, alle als Short deklariert. Für jedes g muss 0 erreicht sein, dass das dazugehörige l, falls es > 1 ist, auf einen Zähler addiert wird. Also so:

    Code :
    1
    2
    3
    4
    5
    6
    
    If g12 < 0 Then
                If l12 > 1 Then
                    zählerSp = zählerSp + l12
                    l12 = 0
                End If
            End If

    Nun muss ich nur noch 8 mal den selben Code verwenden bis g20 und l20 abgehandelt sind.

    Das wollte ich halt vereinfachen, damit es bei einem kurzen Code bleibt und von g12 bis g20 sowie l12 bis l20 automatisch gezählt wird.




    Hmm, was ich mache ist schwer kurz zu fassen. Der Code selbst umfasst bereits ewig viele DinA4 Seiten.
    Ich lerne VB über ein Fernstudium und mache etwas um meine Kenntnisse zu vertiefen sowie um dazu zulernen. Mit Sicherheit könnte man vieles anders gestalten vielleicht sogar einfacher aber ich würde es bestimmt nicht nachvollziehen können, denn wir haben noch nicht mal Klassen, Arrays usw. behandelt. Mit dem was ich bereits gelernt habe, kann ich das Programm realisieren, aber ich kam auf den Trichter den Code zu kürzen. Nun scheitert es an der Realisierung
    Aber wenn ich euch den ganzen Code gebe, welcher aus fünf Forumlaren besteht dann würde das den Rahmen sprengen, glaube ich, und ihr würdet sowieso die Hände übern Kopf zusammenschlangen. Wenn es jemand wirklich interessiert, der kann gerne mal reinschaun, aber ich bin noch nicht ganz fertig und halbe Sachen machen keinen Sinn zu zeigen, glaub ich.
     

  4. #4
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    Du solltest ein Array (oder ArrayList oder List oder ähnliches) nutzen.
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  5. #5
    Uther Uther ist offline Mitglied Bronze
    Registriert seit
    Sep 2007
    Beiträge
    37
    Ja, danke, hab mich da jetzt eingelesen, und nun funktioniert es wie ich wollte
     

Ähnliche Themen

  1. wir effektiv variablen deklarieren - laufzeitproblem
    Von pitti24 im Forum Sonstige Sprachen
    Antworten: 1
    Letzter Beitrag: 22.07.10, 11:01
  2. Globale Variablen deklarieren? [C++]
    Von warcraft9105 im Forum .NET Windows Forms
    Antworten: 6
    Letzter Beitrag: 11.07.08, 20:21
  3. Variablen in Var deklarieren
    Von darkpriest im Forum Javascript & Ajax
    Antworten: 22
    Letzter Beitrag: 21.11.07, 11:49
  4. Excel Automatisieren mit Visual Express 2005
    Von finalmagic im Forum C/C++
    Antworten: 0
    Letzter Beitrag: 25.09.07, 09:11
  5. Variablen doppelt deklarieren
    Von Liberty-son im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 30.05.07, 14:03