Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1788to1792
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Fehler 13 Typen unverträglich

VBA Fehler 13 Typen unverträglich
22.10.2020 08:37:38
Sebastian
Hallo Zusammen,
ich habe eine Spalte mit etwa 50 Zahlen (Zeilen).
Diese kommen per Sverweis als ganze Zahlen rein.
Diese 50 Zahlen sollen nach VBA Code Formen einfärben, wie bei einer Ampel. Lieder kommt immer dieser Fehler. Ich bin ratlos.
Per hand und einzeln eintragen der Zahlen geht das.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("B2") Then    'Wert steht in A1
ActiveSheet.Shapes("Bad Muskau").Select    'Freeform 1 ist der Name der Freihandform
With Selection
.ShapeRange.Fill.ForeColor.RGB = fctFarbe(Target.Value)
End With
Target.Select
End If
' Hier für eine weitere Form
If Target = Range("B3") Then    'Wert steht in A2
ActiveSheet.Shapes("Beiersdorf").Select    'Freeform 2 ist der Name der Freihandform
With Selection
.ShapeRange.Fill.ForeColor.RGB = fctFarbe(Target.Value)
End With
Target.Select
' Hier für stehen dann weitere 50 .........
End Sub

Private Function fctFarbe(dblWert As Long) As Long
If dblWert >= 50 Then
fctFarbe = RGB(255, 0, 0)                  'rot
ElseIf dblWert >= 34 And dblWert = 20 And dblWert = 0 And dblWert 
https://www.herber.de/bbs/user/141015.xlsm

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 09:23:19
Herbert_Grom
Hallo Sebastian,
von welchem Blatt sprichst du denn?
Servus
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:10:50
Sebastian
Tabellenblatt Karte ....
Spalte B wird ausgelesen, in Spalte C sind die Sverweise drin. Die sollten aber in Spalte B stehen, nur zum Test hab ich die in Spalte per Hand eingetragen
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:30:02
Herbert_Grom
Wodurch soll das Makro ausgelöst werden? Mittels einer Schaltfläche?
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 12:59:02
Sebastian
Das Makro sollte immer gehen, wenn neue Werte drin stehen oder das Tabellenblatt neu berechnet wird
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 09:31:38
Daniel
Hi
Warum machst du das Umfärben nicht in der Zelle über bedingte Formatierung?
Ist doch viel einfacher und braucht kein Makro.
Gruß Daniel
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:11:40
Sebastian
Hallo ich will nicht die Zelle sondern die Formen (Kreise ) farblich markieren per VBA....
Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:22:00
Daniel
ja, aber die Frage ist, müssen es unbedingt Formen sein?
oder willst du die Formen nachträglich in die Landkarte zum jeweiligen Landkreis verschieben?
dann sind formen notwendig.
aber auch dann gäbe es eine VBA-freie Lösung:
richte in Spalte D wie von mir beschrieben die Bedingte Formatierung ein.
mach von jeder Zelle in Spalte D eine verknüpfte Bildkopie (Zelle kopieren und per Kontextmenü - Inhalte Einfügen - Verküpfte Grafik (unten rechts) einfügen)
diese Bildkopie kannst du dann in die Landkarte verschieben.
ist zwar dann immer rechteckig, kommt dafür aber ohne Programmierung aus (was deinem Kenntnisstand entgegen kommen sollte)
damit könntest du sogar ohne großen Aufwand die Ampeln aus den Symbolsätzen verwenden
Gruß Daniel
Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:27:51
Herbert_Grom
Hallo Daniel,
deine Idee ist wie immer prima und ich würde sie auch genau so anwenden. Doch wenn er halt seine Shapes will, dann lass sie ihm doch. Zumal ich schon an der entspr. Lösung arbeite und fast fertig bin!
Servus
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:12:52
Sebastian
Hallo ich will nicht die Zelle sondern die Formen (Kreise ) farblich markieren per VBA....
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 09:36:53
Luschi
Hallo Sebastian,
die If-Statements müssen so formuliert werden:
If Target.Address(0,0) = Range("B2").Address(0,0) Then 'Wert steht in A1
denn Du willst ja nicht Werte sondern Zelladressen miteinander vergleichen
- Target = Range("B2")
  ist das gkeiche wie
- Target.Value = Range("B2").Value
Gruß von Luschi
aus klein-Paris
Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:13:05
Daniel
Hi
sehr aufwendiger Code.
du solltest das per Schleife machen.
probier mal diesen Code anstelle deines bisherigen:
die Umfärbung wird damit ausgelöst, wenn die SVerweisformeln neu berechnet werden.
Private Sub Worksheet_Calculate()
Dim shpe As Shape
Dim Zelle As Range
Dim Meldung As String
For Each shpe In Me.Shapes
Set Zelle = Columns(1).Find(what:=shpe.Name, LookIn:=xlValues, lookat:=xlWhole)
If Not Zelle Is Nothing Then
shpe.Fill.ForeColor.RGB = fctFarbe(Zelle.Offset(0, 2).Value)
Else
Select Case shpe.Name
Case "Picture 2"
Case Else
Meldung = Meldung & vbLf & "- " & shpe.Name
shpe.Fill.ForeColor.RGB = RGB(200, 200, 200)
End Select
End If
Next
If Meldung  "" Then
MsgBox "F?r folgende Shapes konnte keine Datenzeile gefunden werden:" & vbLf _
& Meldung & vbLf & vbLf _
& "Bitte pr?fen sie die Schreibweisen von Shape-Namen und Text in Spalte A:"
End If
End Sub

außerdem bekommst du eine Hinweismeldung, wenn du mal einen Shape-Namen anders geschrieben hast als in Spalte A.
die Namen der Grafiken, die sich sonst noch auf dem Blatt befinden, solltest du bei Select Case auflisten (analog "Picture 2"), sonst bekommst du für die immer eine Fehlermeldung.
sollten weitere Gemeinden hinzukommen oder wegfallen, muss der Code nicht geändert werden, es reicht die entsprechenden Shapes hinzuzufügen oder zu löschen
Gruß Daniel
Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 10:44:01
Sebastian
Danke dir .....
das geht ja Fix hier :)
endlich kann ich meinen eigenen Risikogebiete deklarieren :)
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 12:58:03
Sebastian
Hallo Daniel,
leider hab ich nun das Problem, wenn ich im Ersten Tabellenblatt Formel ändere oder Zahlen eintrage, kommt jedesmal die Fehlermeldung aus dem VBA Skript.
Rectangel 1 sucht er immer :(
MsgBox "F?r folgende Shapes konnte keine Datenzeile gefunden werden:" & vbLf _
& Meldung & vbLf & vbLf _
& "Bitte pr?fen sie die Schreibweisen von Shape-Namen und Text in Spalte A:

Das VBA soll ja nur auf dem Tabellenblatt Karte funktionieren udn nun bleiben alle Formen grün :(
Private Sub Worksheet_Calculate()
Dim shpe As Shape
Dim Zelle As Range
Dim Meldung As String
For Each shpe In Me.Shapes
Set Zelle = Columns(1).Find(what:=shpe.Name, LookIn:=xlValues, lookat:=xlWhole)
If Not Zelle Is Nothing Then
shpe.Fill.ForeColor.RGB = fctFarbe(Zelle.Offset(0, 2).Value)
Else
Select Case shpe.Name
Case "Picture 2"
Case Else
Meldung = Meldung & vbLf & "- " & shpe.Name
shpe.Fill.ForeColor.RGB = RGB(200, 200, 200)
End Select
End If
Next
If Meldung  "" Then
MsgBox "F?r folgende Shapes konnte keine Datenzeile gefunden werden:" & vbLf _
& Meldung & vbLf & vbLf _
& "Bitte pr?fen sie die Schreibweisen von Shape-Namen und Text in Spalte A:"
End If
End Sub
Private Function fctFarbe(dblWert As Long) As Long
If dblWert >= 50 Then
fctFarbe = RGB(255, 0, 0)                  'rot
ElseIf dblWert >= 34 And dblWert = 20 And dblWert = 0 And dblWert 

Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 13:08:00
Sebastian
jetzt bleiben alle grün, das mit Case hab ich verstanden :(
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 13:42:46
Daniel
Hi
kannst du die Datei mit dem Makro bitte hier im Forum hochladen?
das GoogleDocs lässt mich die Datei nur als xlsx runter laden und das bringt ja nichts.
Gruß Daniel
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 13:47:28
Daniel
Hi
in deiner Beispieldatei standen die Werte für Farbe in Spalte C (also mit der Formel)
in deiner neuen Datei ist die Spalte C jedoch leer und du hast die Formeln nach Spalte B verschoben.
das musst du im Code natürlich anpassen.
hast du den Code soweit verstanden, dass du das selber hinbekommst?
Gruß Daniel
Anzeige
AW: VBA Fehler 13 Typen unverträglich
22.10.2020 14:36:09
Sebastian
Ach da geht es jetzt :) Kopf auf Tischplatte klatsch

82 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige