Ich habe mir in meinem Ribbon ein Dropdown eingebettet, mit dem ich bei bestimmten Zellen Werte eintragen lasse. Z.B. Soll bei Auswahl "Arbeitszeit" die Werte aus den Spalten 20 und 21 zusammen in Spalte 14 mit einem Bindestrich dazwischen eingetragen werden.
Voraussetzung ist, das auch Werte in der Tabelle stehen.
Erster Teil funktioniert auch, nur scheitere ich gerade daran, das eine MsgBox erscheinen soll, wenn in der Tabelle in den Spalte und keine Werte stehen.
Option Explicit
Public Sub SonstAngaben_ArbZ()
Dim i As Long
Dim strA As String, strB As String, strC As String
With ActiveSheet
For i = 12 To .Cells(42, 20).End(xlUp).Row
'wenn Zelle Spalte 14 leer und Zelle Spalte 20 nicht leer, dann übertrage 20 und 21 nach 14
If .Cells(i, 14) = "" And .Cells(i, 20) > "" Then
If .Cells(i, 4) = "Ruhe" Or .Cells(i, 4) = "Krank" Or .Cells(i, 4) = "Urlaub" Then
.Cells(i, 14) = ""
Else
strA = .Cells(i, 20).Text
strB = .Cells(i, 21).Text
strC = strA & " - " & strB
.Cells(i, 14) = strC
.Cells(8, 14).Value = ""
.Cells(8, 14).Value = "Arbeitszeit"
.Cells(i, 14).HorizontalAlignment = xlCenter
End If
ElseIf .Cells(i, 20) = "" And .Cells(i, 21) = "" Then
MsgBox "Keine Angaben", vbInformation
.Cells(8, 14).Value = "Sonstige Angaben"
Exit Sub
End If
Next i
End With
End Sub
Wo habe ich den Fehler? Vielleicht kann mir jemand auf die Sprünge helfen.
Vielen Dank im Voraus
Gruß
Peer