Ergänzung
23.09.2005 13:15:57
Kira
Hallo Heinz,
ich habe jetzt folgenden Code, der leider noch nicht so ganz passt:
Sub CommandButton1_Click()
Dim z As Range, ber As Range, ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
For Each z In Range("A1:X30")
If z.Value = "" Then
End If
If z.NumberFormat = "#,##0.00" Then
Range("H1").Value = TextBox1.Text
z = z * Range("H1")
Application.Calculate
If ber Is Nothing Then
Set ber = z
Else
Set ber = Union(ber, z)
End If
End If
Next z
Next
End Sub
Problem ist folgendes: Es werden alle Zellen in der Mappe, die dasZahlenformat besitzen, markiert. Meine Umrechnung mit H1 funktioniert jedoch noch nicht so, wie sie sollte. Bisher werden nur die entsprechenden Zellen in Tabelle1 bearbeiten allerdings werden diese so oft mit H1 multipliziert, wie ich Tabelle in der Mappe habe. Außerdem werden allen Zellen Werte zugewiesen, auch wenn sie ursprünglich keine hatten, d.h. aus einer leeren formaitierten Zelle wird 0,00.
Wie kriege ich das hin, dass er
1. mit allen markierten Zellen der mappe und nicht nur der ersten rechnet
2. die Umrechnung nur einmal und nicht entsprechend der Tabellenzahl durchführt und
3. die leeren Zellen leer lässt.
Ich weiß, dass das diesmal viel auf einmal ist. Ich habe auch einen anderen Code, mit dem ich das hinbekommen habe, allerdings wurden dort die Zellen umständlicher (dauert zu lange) markiert. Nur kriege ich die beiden Codes nicht zusammen.
Vielleicht hast du ja ne Lösung.
Gruß
Kira