
123660
14.01.2016, aktualisiert am 19.01.2016
Spalte suchen, rechnen und ersetzen Excel vba
Hallo zusammen,
ich hoffe ihr könnt mir weiter helfen. mein Problem ist :
ich habe ein Tabelle mit 2 spalten ( siehe Bild) und möchte nach die zahlen in spalte "H" suchen, die mit "30" oder "3" anfangen zum Beispiel 3000 oder 300.
wenn ein zahl gefunden ist, muss der wert der gegenüber steht in mein Fall "-2" als Exp. gerechnet werden. so als Formel (10^-2) * 1000=10 und die 1000 mit 10 überschreiben.
als Formel in Zelle einzugeben ist einfach aber ich will das mit vba machen.
so sieht mein Tabelle jetzt.
und so muss die Aussehen später.
vielen Dank im voraus.
aschi
ich hoffe ihr könnt mir weiter helfen. mein Problem ist :
ich habe ein Tabelle mit 2 spalten ( siehe Bild) und möchte nach die zahlen in spalte "H" suchen, die mit "30" oder "3" anfangen zum Beispiel 3000 oder 300.
wenn ein zahl gefunden ist, muss der wert der gegenüber steht in mein Fall "-2" als Exp. gerechnet werden. so als Formel (10^-2) * 1000=10 und die 1000 mit 10 überschreiben.
als Formel in Zelle einzugeben ist einfach aber ich will das mit vba machen.
so sieht mein Tabelle jetzt.
und so muss die Aussehen später.
vielen Dank im voraus.
aschi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 293113
Url: https://administrator.de/forum/spalte-suchen-rechnen-und-ersetzen-excel-vba-293113.html
Ausgedruckt am: 04.04.2025 um 04:04 Uhr
11 Kommentare
Neuester Kommentar
Hallo Aschi,

Grüße Uwe
Als Formel in Zelle einzugeben ist einfach aber ich will das mit vba machen.
biddeschön ...Sub SearchAndCalc()
Dim cell As Range
With ActiveSheet
For Each cell In .Range("H1:H" & .Cells(Rows.Count, "H").End(xlUp).Row)
If Left(cell.Value, 1) = "3" Then
cell.Offset(-1, -5).Value = (10 ^ cell.Offset(0, -5).Value) * cell.Offset(-1, -5).Value
End If
Next
End With
End Sub
Hallo,
sind es immer zwei Zeilen, die in diesem Zusammenhang betrachtet werden müssen?
z.B.:
1000 4001
-2 3001
2000 5001
-3 3111
Soll das Makro nach Eingabe der "1000" ausgeführt werden oder per Button?
Ansonsten funktioniert für diese zwei Datenzeilen folgendes:
Beste Grüße
thejoker2305
sind es immer zwei Zeilen, die in diesem Zusammenhang betrachtet werden müssen?
z.B.:
1000 4001
-2 3001
2000 5001
-3 3111
Soll das Makro nach Eingabe der "1000" ausgeführt werden oder per Button?
Ansonsten funktioniert für diese zwei Datenzeilen folgendes:
Sub ZahlSuchen
For i = 2 to 3
if left(range("H"&i).value,1) = "3" or left(range("H"&i).value,2) = "30" then _
range("C"&i -1).value = (10 ^ range("C"&i)*Range("C" & i-1))
next i
end
Beste Grüße
thejoker2305
Zitat von @123660:
ich habe aber noch eine frage bitte, manchmal habe ich zelle die fangen so : "3003 abcdef......." direkt nach der zahl kommt text.
Also in Spalte H ?ich habe aber noch eine frage bitte, manchmal habe ich zelle die fangen so : "3003 abcdef......." direkt nach der zahl kommt text.
kann man nur zum beispiel die zellen nur nach die ersten 4 oder 3 zahlen suchen ?
Du möchtest in dieser gefundenen Zelle H welche mit 3 beginnt also nachträglich nur den überflüssigen Text entfernen ? In der Rechnung kommt die Zahl ja ansonsten nicht zum tragen.Wenn das der Fall ist, machst du hiermit:
Sub SearchAndCalc()
Dim cell As Range, regex As Object
Set regex = CreateObject("vbscript.regexp")
regex.Pattern = "^\d+"
With ActiveSheet
For Each cell In .Range("H1:H" & .Cells(Rows.Count, "H").End(xlUp).Row)
If Left(cell.Value, 1) = "3" Then
If Not IsNumeric(cell.Value) Then
Set m = regex.Execute(cell.Value)
cell.Value = CLng(m(0))
End If
cell.Offset(-1, -5).Value = (10 ^ cell.Offset(0, -5).Value) * cell.Offset(-1, -5).Value
End If
Next
End With
Set regex = Nothing
End Sub
Zitat von @123660:
also hier eine bessere Beschreibung für meine Aufgabe.ich muss die Exp ausrechnen, die fangen immer mit ein 3 vorne bei mir. sieht man in Spalte H.
Haben wir ja schon alles gehabt und funktioniert ja bereits ...also hier eine bessere Beschreibung für meine Aufgabe.ich muss die Exp ausrechnen, die fangen immer mit ein 3 vorne bei mir. sieht man in Spalte H.
habe nochmal die komplette Tabelle hier.
Beispiel:
Lösung:
Ikke sehen nix Beispiel:
Lösung:
Wenns das dann war den Beitrag bitte noch als gelöst markieren. Merci.