Menü
An- und Abmelden
Partner / Links
|
Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.
Nachrichten - tommytom79
Seiten: [1]
1
« am: Februar 08, 2017, 14:24:35 Nachmittag »
2
« am: Februar 08, 2017, 08:13:52 Vormittag »
Ich habe folgenden bestehen Code: Private Sub Worksheet_Change(ByVal Target As Range) 'Wenn etwas geändert wird If Target.Column = 1 Then If Not IsEmpty(Cells(Target.Row, 1)) Then ActiveCell.FormulaR1C1 = _ "=IF(RC[-1]="""","""",VLOOKUP(Anweisungen!RC[-1],Panels!R5C2:R100C3,2,FALSE))" Cells(Target.Row, 3).Value = Date Exit Sub End If End If If Target.Column = 6 Then 'in Spalte E If ActiveSheet.Cells(Target.Row, 1).Value <> vbNullString Then 'und Spalte A nicht leer _ _ ist strFind = ActiveSheet.Cells(Target.Row, 1).Value Set rngFind = ThisWorkbook.Worksheets("Top30").Columns(7).Find(What:=strFind, _ LookAt:=xlPart) 'suche Wert aus Spalte A in Top30 in Spalte B If Not rngFind Is Nothing Then 'Wenn Wert existiert dann ThisWorkbook.Worksheets("Top30").Activate Top30alleanzeigen Top30anzeigen ThisWorkbook.Worksheets("Anweisungen").Activate Else 'sonst With ThisWorkbook.Worksheets("Top30") q = .Cells(6, 5).CurrentRegion.Rows.Count + 6 .Cells(q, 1).FormulaR1C1 = "=RANK(RC[2],C[2])" .Cells(q, 2).FormulaR1C1 = "=""" & strFind & " (""&COUNTIFS(Anweisungen!C[- _ _ 1],""" & strFind & """,Anweisungen!C[3],""ausgezahlt"")& ""x)""" .Cells(q, 3).FormulaR1C1 = "=SUMIFS(Anweisungen!C[1],Anweisungen!C[-2],""" & _ _ strFind & """,Anweisungen!C[2],""ausgezahlt"")" .Cells(q, 4).FormulaR1C1 = "=IF(ISERROR(VLOOKUP(IFERROR(LEFT(RC[-2],SEARCH(" _ _ " "",RC[-2],1) -1),RC[-2]),Panels!C[-2],1,0)),""nicht aktiv"",""aktiv"")" .Cells(q, 6).FormulaR1C1 = "=RANK(RC[2],C[2])" .Cells(q, 7).FormulaR1C1 = "=""" & strFind & " (€ ""&TEXT(SUMIFS( _ Anweisungen!C[-3],Anweisungen!C[-6],""" & strFind & """,Anweisungen!C[-2],""ausgezahlt""),""#.## _ 0,00"") & "")""" .Cells(q, 8).FormulaR1C1 = "=COUNTIFS(Anweisungen!C[-7],""" & strFind & """, _ _ Anweisungen!C[-3],""ausgezahlt"")" .Cells(q, 9).FormulaR1C1 = "=IF(ISERROR(VLOOKUP(IFERROR(LEFT(RC[-2],SEARCH(" _ _ " "",RC[-2],1) -1),RC[-2]),Panels!C[-7],1,0)),""nicht aktiv"",""aktiv"")" .Cells(q, 11).FormulaR1C1 = "=RANK(RC[2],C[2])" .Cells(q, 12).FormulaR1C1 = "=""" & strFind & " (€ ""&TEXT(SUMIFS( _ Anweisungen!C[-8],Anweisungen!C[-11],""" & strFind & """,Anweisungen!C[-7],""ausgezahlt""),""#.# _ #0,00"") & "")""" hier bräuchte ich den neuen Code .Cells(q, 14).FormulaR1C1 = "=IF(ISERROR(VLOOKUP(IFERROR(LEFT(RC[-2], _ SEARCH("" "",RC[-2],1) -1),RC[-2]),Panels!C[-12],1,0)),""nicht aktiv"",""aktiv"")" ThisWorkbook.Worksheets("Top30").Activate Top30alleanzeigen Top30anzeigen ThisWorkbook.Worksheets("Anweisungen").Activate End With End If End If With ThisWorkbook.Worksheets("Anweisungen") If .Cells(Target.Row, 6) = "j" Then .Cells(Target.Row, 7) = Date End If End With End If End Sub
Diesen will ich nun wie folgt erweitert haben. Ich will, dass aus dem Tabellenblatt "Panels" aus der Spalte "G" in Bezug auf die Spalte "B", welchen ich im Tabellenblatt "Anweisungen" in Spalte "A" eingegeben habe, ein Datum ausgelesen bekommen und dann fix in der Formel stehen haben, welche sich im Tabellenblatt "Top30" in der Spalte "M" befinden soll. So sollte dann der Code aussehen: =DATEDIF("das ermittelte Datum";HEUTE();"M")/(ZÄHLENWENNS(Anweisungen!A:A;"hugo";Anweisungen!E:E; "ausgezahlt")) Leider bekomme ich es nicht hin. Ich hoffe, dass mir jemand helfen kann. Die nötige Datei habe ich mit angehängt. Diesen Beitrag gibt es auch in weiteren Foren: Herber: http://www.herber.de/cgi-bin/callthread.pl?index=1538672Msoffice: http://www.ms-office-forum.net/forum/showthread.php?t=339591Clever: http://www.clever-excel-forum.de/thread-8514.htmlOnline-Excel: http://www.online-excel.de/fom/fo_read.php?f=1&bzh=0&h=89665#a123x
Seiten: [1]
|