AW: Also so...
09.05.2017 11:51:55
Nati
Hallo Michael,
danke dir!, der Code läuft. Mit dem Spalten einblenden, gibt es ein paar Anforderungen.
Wie bau ich dein Code am besten ein ?
Public Sub AddingProcess()
Application.ScreenUpdating = False
Dim ws4 As Worksheet
Dim intLastC As Integer
Dim i As Integer
Set ws4 = ThisWorkbook.Worksheets("Calculation")
ActiveSheet.Unprotect
'wenn Prozessschritt (Spalte) eingeblendet ist, dann blende die nächste ein, und zwar nur _
diese
'Zähler Rückwärts
' Anfang: Spalte P, bis Spalte H
' For i = 16 To 8 Step -1
' 'Blende zuerst die letzte Spalte hinter der letzt eingeblendeten ein
' If ws4.Columns(i).Hidden = False Then
' ws4.Columns(i + 1).Hidden = False
' 'wenn eine Spalte von P bis H ausgeblendet ist, dann blende diese ein
' ElseIf ws4.Columns(i).Hidden = True Then ws4.Columns(i).Hidden = False
' Exit For
' End If
' Next i
Dim r As Range: Set r = Range("H1:P1")
Dim c As Range
For Each c In r
If c.EntireColumn.Hidden = False Then i = i + 1
Next c
If i = r.Cells.Count Then MsgBox "EN: More than 10 process steps not possible!" _
& Chr(13) & Chr(13) & "DE: Es können maximal 10 Prozessschritte erstellt werden!", vbOKOnly + _
vbInformation, _
"Information"
Set r = Nothing: Set c = Nothing
'If ws4.Columns("P").Hidden = False Then
'MsgBox "EN: More than 10 process steps not possible!" _
'& Chr(13) & Chr(13) & "DE: Es können maximal 10 Prozessschritte erstellt werden!", vbOKOnly + _
vbInformation, _
'"Information"
'Else: MsgBox "ok"
'End If
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Range("B5").Select
Application.ScreenUpdating = True
End Sub