Formel/Bezug wird nicht umgesetzt
19.03.2007 18:03:41
Wutax
Ich habe mal wieder ein Problem mit einem von mir geschriebenen VBA Makro.
Darin möchte ich eine einfache Formel/Bezug in eine Zelle schreiben. Die Formel/Bezug ist korrekt, wird aber von Excel nicht umgesetzt. Sie wird einfach als Text angezeigt. Wenn man nach dem Durchlauf des Makros die betreffende Zelle manuell ansteuert, den Cursor hineinsetzt und mit Enter bestätigt wird die Formel umgesetzt und es erscheint (in diesem Fall ein Zellbezug) der Text der entsprechend bezogenen Zelle aus einem anderen Tabellenblatt.
VBA Quellcode:
aktuelles_Blatt = ActiveSheet.NameWert1 = 0
For a = 13 To 27
Nachname = "A" + LTrim(Str(a))
Vorname = "F" + LTrim(Str(a))
Ergebnis = "O" + LTrim(Str(a))
If Range(Ergebnis).Value > "" Then
If Range(Ergebnis).Value > Wert1 Then
Wert1 = Range(Ergebnis).Value
Bester1 = Range(Nachname).Value + ", " + Range(Vorname).Value
Zelle1 = Ergebnis
Bester_Vorname = Vorname
Bester_Nachname = Nachname
Schuß1 = "K" + LTrim(Str(a))
Schuß2 = "L" + LTrim(Str(a))
Schuß3 = "M" + LTrim(Str(a))
Schuß4 = "N" + LTrim(Str(a))
End If
End If
Next a
Range("B31").Value = Bester1
Range("K31").Value = "=Wenn(B310;" + Zelle1 + ";"""")"
If ActiveSheet.Name = "Jägerfahnenkompanie" Then Zahl = 12
If ActiveSheet.Name = "Edelweiß" Then Zahl = 17
If ActiveSheet.Name = "Freischuetz" Then Zahl = 22
If ActiveSheet.Name = "Schnelle_Schuetzen" Then Zahl = 27
If ActiveSheet.Name = "Immer_Gut_Drauf" Then Zahl = 32
Sheets("Jägerpokal").Range("K" + LTrim(Str(Zahl))).Value = "='" + aktuelles_Blatt + "'!" + Bester_Nachname
Sheets("Jägerpokal").Range("P" + LTrim(Str(Zahl))).Value = "='" + aktuelles_Blatt + "'!" + Bester_Vorname
Sheets("Jägerpokal").Range("U" + LTrim(Str(Zahl))).Value = "='" + aktuelles_Blatt + "'!" + Schuß1
Sheets("Jägerpokal").Range("V" + LTrim(Str(Zahl))).Value = "='" + aktuelles_Blatt + "'!" + Schuß2
Sheets("Jägerpokal").Range("W" + LTrim(Str(Zahl))).Value = "='" + aktuelles_Blatt + "'!" + Schuß3
Sheets("Jägerpokal").Range("X" + LTrim(Str(Zahl))).Value = "='" + aktuelles_Blatt + "'!" + Schuß4
Erst dachte ich es hätte was mit der Zellformatierung zu tun, bin aber auch hier auf ein Problem gestoßen, das ich nicht lösen kann. Wenn ich zum Beispiel folgendes Makro aufzeiche:
Range("K32").Select
Selection.NumberFormat = "General"
und das entsprechende Makro wieder abspiele gibt es nur eine Fehlermeldung:
>Laufzeitfehler '1004!:
>
>Die Number-Format-Eigenschaft des Range-Objektes kann nicht festgelegt werden.
Das heißt ich kann die betreffenden Zellen nicht zu (in diesem Fall) "Standartformatierung formatieren.
Ich weiß nicht mehr weiter, außer das ich statt des Zellbezuges einfach den Inhalt der Zelle übertrage, aber das wäre nicht im Sinne des Erfinders.
Schönen Gruß, Wutax
P.S.: Hier ist mal der Link zur entsprechenden Datei: https://www.herber.de/bbs/user/41183.xls