VBA Excel Zeile Kopieren und woanders einfügen

Du mischst das VBA Berechnungen mit Excelformeln.
Soll jetzt die Zahl in VBA berechnet werden oder willst du eine Formel setzen?

Für das Zweite;
Code:
"=SUMME(G" & last "+"H" & last & ")"
 
Genau das meinte ich Dankeschön. Es berechnet es aber nicht automatisch dort steht jetzt "#NAME=?" erst wenn ich in die Zelle reingehe berechnet es. Woran kann es liegen?
 
Funktioniert leider nicht, dort steht immer noch "#Name=?". und zu meiner anderen Frage für das Suchen

Ich habe diese Werte ins Modul eingefügt

Code:
Public x As String
Public y As String
Public t As Integer
Public i As Long
Public z As String

und in der Click methode steht das hier jetzt

Code:
z = ActiveSheet.UsedRange.Rows.Count
x = TextBox1
y = TextBox2

If t = 2 Then

For i = i To z
    If Cells(i, 1) = x And Cells(i, 2) = y Then
    t = 2
    Exit For
    
End If
Next

If t = 2 Then
ActiveSheet.Cells(i, 1).Select


Else
    MsgBox "nicht gefunden!", vbExclamation
    TextBox1 = ""
    TextBox2 = ""
    End If
End If



If TextBox1 = "" And TextBox2 = "" Then
MsgBox "nicht gefunden!", vbExclamation
End If

For i = 2 To z
    If Cells(i, 1) = x And Cells(i, 2) = y Then
    t = 1
    Exit For
  
End If
Next

If t = 1 Then
ActiveSheet.Cells(i, 1).Select
t = 2

Else
    MsgBox "nicht gefunden!", vbExclamation
    TextBox1 = ""
    TextBox2 = ""
    End If

das funktioniert auch nicht
 
OK. Jetzt habe wir Chaos. mehrere Fragen, irgendwelche Codeschnipsel mit dem Kommentar "Funktioniert nicht"

Das Hiflt nicht.
 
Mit das funktioniert nicht meine ich, dass es bei der Suche immer noch nur den ersten auswählt. Wenn ich wieder auf Suchen klicke soll es weitersuchen. Der Code steht dafür.

Die andere Frage ist wegen der Berechnung. Es setzt die Formel in die jeweilige Zelle ein aber berechnet es nicht. Das von dir vorgeschlagene Befehl mit .Calculate berechnet die Zelle auch nicht. Wenn ich auf die Zelle draufgehe steht dort die gewünschte Formel oben in der Leiste aber in der Zelle steht "#NAME=?".

Ich hoffe, dass es jetzt deutlicher wurde.
 
Kein Wunder. Du speicherst zwar i im Modul. Jedoch beginnst du immer wieder von vorne
Visual Basic:
Private lastI As Long

Public Sub mySearch()
 Dim x, y, i, t
 x = TextBox1
 y =TextBox2

 for i = lastI+1 to ActiveSheet.UsedRange.Rows.Count
  if Cells(i, 1) = x and Cells(i, 2) = y then
   t = 2
   lastI = i
   exit for
  end if
 next

 ...
 
End Sub
 
Dankeschön, genau dort habe ich eine Denkblockade gehabt. Ich wusste nicht, wie er wieder dort anfangen soll aber jetzt geht es Danke für deine Hilfe.
Das Problem mit dem Rechnen konnte ich immer noch nicht lösen. Es setzt die Formel in die Zelle ein aber rechnet es nicht aus. Erst wenn ich in die Zelle und dann oben in die Leiste rein gehe rechnet es. Bis dahin steht in der Zelle nur "#Name=?" .
 
Das steht in der Zelle:

beispiel2.png


und das in der Leiste

beispiel.png


und das ist der Code

Code:
ActiveSheet.Cells(last, 19).Value = "=SUMME(G" & last & ":" & "R" & last & ")"

Erst wenn ich die Leiste anklicke fängt es an zu rechnen.
 
Zurück