Thema Datum  Von Nutzer Rating
Antwort
16.11.2014 12:45:13 dominik
NotSolved
Blau like operator spricht Zelle falsch an
16.11.2014 13:55:50 Holger
Solved
16.11.2014 15:12:30 dominik
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
16.11.2014 13:55:50
Views:
691
Rating: Antwort:
 Nein
Thema:
like operator spricht Zelle falsch an

Hallo dominik,

ich weiß nicht, ob du jeweils die Zahl, die am Ende steht, jeweils um 1 erhöht in die Zelle schreiben willst. Das geht natür viel einfacher, aber vielleicht gibt es Gründe, so zu verfahren, wie du es vorschlägst.

Dein Fehler ist dann, dass die glaubst, der Buchstabe n zwischen den Sternen repräsentiert die Laufvariable n. Er ist aber der Buchstabe, der im Wort 'Analyse' natürlich gefunden wird und zwar beim 1. Durchgang, also n=1 und n+1=2. Weil '2' in der Zelle steht, wird kein 'n' mehr gefunden und der Vorgang 49 Mal ohne weitere Zelländerung wiederholt, weil ja in '2" kein 'n' vorkommt.

Falls du das willst, was ich beschrieben habe, muss die Laufvariable in eine Stringvariable umgewandelt werden. Da aber nach der ersten ersten Änderung der um 1 erhöhte Wert in der Zelle steht, wird mit dem nächsten n dieser Wert gefunden und wiederum erhöht. Deshalb musst du nach der ersten Änderung die For-Next-Schleife verlassen.

Versuche

Dim Spalte As Integer
Dim Zeile As Integer
Dim l_zeile As Integer
Dim l_spalte As Integer
Dim n As Integer
Dim str As String
 
l_zeile = Cells(Rows.Count, 1).End(xlUp).Rows.Row
l_spalte = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
 
For Spalte = 1 To l_spalte
For Zeile = 1 To l_zeile
If Cells(Zeile, Spalte) Like "Fx" Then
Cells(Zeile, Spalte) = 1
ElseIf Cells(Zeile, Spalte) Like "Fy" Then
Cells(Zeile, Spalte) = 2
ElseIf Cells(Zeile, Spalte) Like "Fz" Then
Cells(Zeile, Spalte) = 3
ElseIf Cells(Zeile, Spalte) Like "Mx" Then
Cells(Zeile, Spalte) = 4
ElseIf Cells(Zeile, Spalte) Like "My" Then
Cells(Zeile, Spalte) = 5
ElseIf Cells(Zeile, Spalte) Like "Mz" Then
Cells(Zeile, Spalte) = 6
ElseIf Cells(Zeile, Spalte) Like "*montage*" Then
Cells(Zeile, Spalte) = 1
 
ElseIf Cells(Zeile, Spalte) Like "*LF*" Then
 
For n = 1 To 50
'str = Val(n)
If Cells(Zeile, Spalte) Like "*" + cstr(n) + "*" Then
'n = Val(str)
Cells(Zeile, Spalte) = n + 1
Exit For
End If
Next n
End If
Next Zeile
Next Spalte
 
Gruß
Holger

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
16.11.2014 12:45:13 dominik
NotSolved
Blau like operator spricht Zelle falsch an
16.11.2014 13:55:50 Holger
Solved
16.11.2014 15:12:30 dominik
NotSolved