Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1180to1184
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

Blattschutz richtig setzen

Blattschutz richtig setzen
Heinz
Hallo Leute
Im unteren Code kann ich mit Doppellklick einen Kommentar eingeben.
Das funktioniert auch,nur beim verlassen der Zelle kommt die Meldung das die Zelle gesperrt ist.
Wie müsste ich bitte Protect richtig setzen ?
Gruß
Heinz
'Kommentare bei Doppelklick & Schriftgrösse Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean) Application.ScreenUpdating = False ActiveSheet.Unprotect Password:="test" Dim RaBereich As Range Set RaBereich = Range("C3:AG156") Set RaBereich = Intersect(RaBereich, Range(target.Address)) If Not RaBereich Is Nothing Then Application.ScreenUpdating = False Dim eing As String Dim coKommentar As Comment eing = InputBox("Kommentar eingeben!") If eing "" Then ActiveCell.AddComment ActiveCell.Comment.Visible = False ActiveCell.Comment.Text Text:=eing End If For Each coKommentar In ActiveSheet.Comments coKommentar.Shape.DrawingObject.Font.Size = 12 coKommentar.Shape.OLEFormat.Object.AutoSize = True Next coKommentar End If ActiveSheet.Protect Password:="test" Application.ScreenUpdating = True End Sub

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Blattschutz richtig setzen
15.10.2010 21:18:34
Luschi
Hallo Heinz, versuch es mal so:

Option Explicit
'Kommentare bei Doppelklick & Schriftgrösse
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim RaBereich As Range, coKommentar As Comment
Dim eing As String, ok As Boolean
'Bearbeiten der Zelle deaktivieren
Cancel = True
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:="test"
Set RaBereich = ActiveSheet.Range("C3:AG156")
Set RaBereich = Application.Intersect(RaBereich, Target)
If Not (RaBereich Is Nothing) Then
ok = Target.Comment Is Nothing
If Not ok Then
eing = Target.Comment.Text
Application.SendKeys "{right}", False
Else
eing = ""
End If
eing = InputBox("Kommentar eingeben!", , eing)
If eing  "" Then
'wenn Zelle keinen Kommentar hat, dann einen hinzufügen
'sonst nur Kommentar ändern
If ok Then
Target.AddComment
End If
Target.Comment.Visible = False
Target.Comment.Text Text:=eing
End If
For Each coKommentar In ActiveSheet.Comments
coKommentar.Shape.DrawingObject.Font.Size = 12
coKommentar.Shape.OLEFormat.Object.AutoSize = True
Next coKommentar
End If
Set RaBereich = Nothing
Set coKommentar = Nothing
ActiveSheet.Protect Password:="test"
Application.ScreenUpdating = True
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Blattschutz richtig setzen
15.10.2010 21:27:27
Heinz
Hallo Luschi
Danke jetzt funkt.es genau wie es sollte.
PS: Weisst du zufällig auch wie ich in der InputBox einen Text "Namen" und das Datum von heute vorgeben kann.
Also zum Beispiel "Heinz - 15.10.10" plus restlicher Kommentar ?
Oder sollte ich einen neuen Thread aufmachen ?
Nochmals Danke
Heinz
AW: Blattschutz richtig setzen
15.10.2010 21:42:13
Lutz
Hallo Heinz,
versuch's doch mal damit:
 _
Option Explicit
Dim strgE As String
Dim varD As String
Dim strgN As String
Sub Eingabe()
varD = Date
strgN = "Heinz"
strgE = InputBox("Hinweise...", "Deine Eingabebox", strgN & " - " & varD)
End Sub

M.f.G.
Lutz
Anzeige
AW: Blattschutz richtig setzen
15.10.2010 21:46:42
Heinz
Hallo Lutz
Danke für Deinen Code,ABER ich würde es gerne im oberen Makro integriert haben.
Danke
Heinz
AW: Danke an Luschi + Lutz
15.10.2010 21:59:03
Heinz
Hallo Luschi & Lutz
Ich bedanke mich recht herzlich bei euch beiden.
Habe es nun hinbekommen.
Dank eurer Hilfe.
Siehe unteren Code.
Gruß & Gute nacht
Heinz

'Kommentare bei Doppelklick & Schriftgrösse
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim RaBereich As Range, coKommentar As Comment
Dim eing As String, ok As Boolean
Dim strgE As String
Dim varD As String
Dim strgN As String    'Bearbeiten der Zelle deaktivieren
Cancel = True
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:="vetro"
Set RaBereich = ActiveSheet.Range("C3:AG154")
Set RaBereich = Application.Intersect(RaBereich, Target)
If Not (RaBereich Is Nothing) Then
ok = Target.Comment Is Nothing
varD = Date
strgN = "Heinz"
strgE = InputBox("Hinweise...", "Deine Eingabebox", strgN & " - " & varD)
Else
eing = ""
End If
If strgE  "" Then
'wenn Zelle keinen Kommentar hat, dann einen hinzufügen
'sonst nur Kommentar ändern
If ok Then
Target.AddComment
End If
Target.Comment.Visible = False
Target.Comment.Text Text:=strgE
End If
For Each coKommentar In ActiveSheet.Comments
coKommentar.Shape.DrawingObject.Font.Size = 12
coKommentar.Shape.OLEFormat.Object.AutoSize = True
Next coKommentar
Set RaBereich = Nothing
Set coKommentar = Nothing
ActiveSheet.Protect Password:="vetro"
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Blattschutz richtig setzen
15.10.2010 22:00:16
Lutz
Hallo Heinz,
hier Deine Inputbox....
 _
Option Explicit
Dim eing As String
Dim varD As String
'Kommentare bei Doppelklick & Schriftgrösse
Private Sub  _
Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim RaBereich As  _
Range, coKommentar As Comment
Dim eing As String, ok As Boolean
'Bearbeiten der Zelle deaktivieren
Cancel = True
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:="test"
Set RaBereich = ActiveSheet.Range("C3:AG156")
Set RaBereich = Application.Intersect(RaBereich,  _
Target)
If Not ( _
RaBereich Is Nothing) Then
ok = Target.Comment Is  _
Nothing
If Not ok Then
eing = Target.Comment.Text
Application.SendKeys "{right}", False
Else
eing = ""
End If
varD = Date
eing = InputBox("Kommentar eingeben!", "Heinz seine Eingabebox", "Heinz" & " - " & varD & " - ")
If eing <> "" Then
'wenn Zelle keinen Kommentar hat, dann einen hinzufügen _
span>
'sonst nur Kommentar ändern
If ok Then
Target.AddComment
End If
Target.Comment.Visible = False
Target.Comment.Text Text:=eing
End If
For Each coKommentar In ActiveSheet.Comments
coKommentar.Shape.DrawingObject.Font.Size = 12
coKommentar.Shape.OLEFormat.Object.AutoSize = True
Next coKommentar
End If
Set RaBereich = Nothing _
span>
Set coKommentar = Nothing _
span>
ActiveSheet.Protect Password:="test"
Application.ScreenUpdating = True
End Sub

M.f.G.
Lutz
Anzeige
AW: Blattschutz richtig setzen
15.10.2010 22:12:23
Heinz
Hallo Lutz
Danke deine Variante funkt.natürlich Super.
Gruß
Heinz
AW: Blattschutz richtig setzen
16.10.2010 08:55:04
Heinz
Hallo Luschi & Lutz
Teste schon die ganze Zeit,das Datum in der InputBox auf das Format DD.MM. zu setzen,leider ohner Erfolg.
Könntet ihr mir bitte nochmals weiterhelfen ?
Gruß
Heinz
Format(varD, "DD/MM")
16.10.2010 09:12:50
Matthias
Hallo Heinz
Sub heinz()
Dim varD, eing As String
varD = Date
eing = InputBox("Kommentar eingeben!", "Heinz seine Eingabebox", "Heinz" & " - " & Format(varD,  _
"DD/MM") & " - ")
MsgBox eing
End Sub
Gruß Matthias
AW: Blattschutz richtig setzen
16.10.2010 09:14:44
Lutz
Hallo Heinz,
ersetze bitte die Zeile varD... durch varD = Format(Date, "d.m.")
M.f.G.
Lutz
Anzeige
AW: Blattschutz richtig setzen
16.10.2010 09:33:51
Heinz
Hallo Lutz & Luschi
Super !!
Recht herzlichen Dank.
Gruß
Heinz

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige