Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

ActiveSheet mit Range - Fehler
#1
Guten Abend Community, ich habe mal wieder einen kleinen Fehler im Script und habe schon verschiedene Möglichkeiten probiert, leider ohne Erfolg.

Ich müsste in der vntValue3 eine Range festlegen in der weiter unten geschaut wird ob in diesen Zellen die Werte vorkommen, wenn ja, soll er in der neu generierten Datei in Zelle L3 den Wert ja einfügen.

Erkennt irgendwer den Fehler? Ich habe schon viele Möglichkeiten ala Try and Error probiert, komme aber nicht weiter. 

Besten Dank im Voraus!

Grüße tyron

Sub SA_Gen()

Dim vntValue As Variant
Dim vntValue2 As Variant
Dim vntValue3 As Variant

vntValue = "SA_TOPSEAL_PLUS"
vntValue2 = ActiveSheet.Range("C13").Value
vntValue3 = ActiveSheet.Range("B17:B30")

    Application.ScreenUpdating = False
    Worksheets("Vorlage_SA_Topseal").Visible = True

    vntValue = Clean_Sheetname(vntValue)

    If Not IsEmpty(vntValue) Then
        If Not Worksheet_Exist("Ang_" & vntValue) Then
                    Worksheets("Vorlage_SA_Topseal").Copy before:=Worksheets("Ang_Zulagen")
          With ActiveSheet
                    .Name = "Ang_" & vntValue
                    .Visible = xlSheetVisible
                    .Tab.ColorIndex = 43
            If vntValue3 = "1000" Then
            .Range("L3").Value = "ja"
            End If
            If vntValue3 = "1200" Then
            .Range("L4").Value = "ja"
            End If
            If vntValue3 = "1500" Then
            .Range("L5").Value = "ja"
            End If
            If vntValue3 = "2000" Then
            .Range("L6").Value = "ja"
            End If
                    .Visible = xlSheetVisible
                   
                End With
            End If
            Worksheets("Vorlage_SA_Topseal").Visible = False
        End If
Antworten Top
#2
Hallo,

als erstes fällt mir auf, dass da Werte in Anführungszeichen stehen. Damit machst du aus Zahlen Texte, ist das gewollt?

Hallo,

vntValue3 ist ein Bereich mehrerer Zellen, da kannst du keinen einzelnen Inhalt abfragen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#3
hmmm ok. Dann ist wohl mein Ansatz falsch. Ich müsste in einem Bereich B17:B30 prüfen ob die Werte 1000, 1200, 1500 oder 2000 vorkommt und wenn ja, soll er mir das in der neu erstellten Tabelle eintragen.

Also quasi: 
Wenn in B17:B30 irgendwo der Wert 1000 eingetragen ist, dann soll er in der neu erstellten Tabelle in Zelle L3 ein ja eintragen
Wenn in B17:B30 irgendwo der Wert 1200 eingetragen ist, dann soll er in der neu erstellten Tabelle in Zelle L4 ein ja eintragen
usw.

Ich glaube ich muss dafür aber erst einmal das Activesheet in einer Variable sichern, weil weiter unten (ab With ActiveSheet) wird die neu erstellte Tabelle als Activesheet angesprochen. 

Kann mir jemand einen Ansatz zeigen?
Antworten Top
#4
vielleicht so und die Sheetnamen noch ergänzen 
PHP-Code:
with range("B17:B30")

  if  not   .find(What:=1000lookin:=xlvalueslookat:=xlwholeis nothing then  Range("L3") = "ja"
end with 
[-] Folgende(r) 1 Nutzer sagt Danke an ralf_b für diesen Beitrag:
  • tyr0n
Antworten Top
#5
wieder etwas gelernt. Vielen Dank für die Hilfe!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste