Blattschutz aufheben - Select - letzte Rettung?

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Blattschutz aufheben - Select - letzte Rettung?
von: Florian
Geschrieben am: 03.12.2003 08:50:15

Hi Forum!

Bin völlig ratlos: Ich kopiere Daten in von einer Arbeitsmappe in eine andere, aktiviere dabei in der 2.Mappe in allen Blättern den Schutz:
'Blattschutz setzen
For i = 1 To Sheets.Count
Sheets(i).Protect
Next i

Wenn ich dann in von der zweiten Mappe den Blattschutz aufheben (wie oben mit "unprotect") und Daten in eine 3. Mappe übergeben will KLAPPT ES UMS VERRECKEN NICHT. Habe schon intensiv auf der (eingentlich ziemlich geilen)CD von Herber gesucht, aber alle Tips wie AktiveSheet unprotect, on Error resume next usw... will alles nicht.

Wäre traumhaft wenn mir jemand helfen könnte, da verdammt viel Arbeit an diesem Problem hängt.

Schöne Grüße,

Florian

Bild


Betrifft: AW: Blattschutz aufheben - Select - letzte Rettung?
von: Michael
Geschrieben am: 03.12.2003 09:04:36

hi,
du setzt mit dem makro auch auf der 3.mappe den protect modus
den musst du vor dem übergeben von daten natürlich ebenfalls "unprotecten"
cu Michael


Bild


Betrifft: Leider Nicht
von: Florian
Geschrieben am: 03.12.2003 09:15:14

Hi Michael!

Klappt leider nicht, die 3. Mappe öffne ich erst nachdem ich die 2. "Unprotectet" habe.
Mir wird dann der Laufzeitfehler 1004 angezeigt, ich kann nichts "Selecten" ;-). Ich führe das "Unprotecten" und das "Selecten" schon in zwei verschiedenen Makros aus, aber irgendwie will`s halt net... (bin Schwabe, liebe das "Verenglischen" auch!)

For i = 1 To Sheets.Count
Sheets(i).Unprotect ("Passwort")
Next i

Aktiv = Range("D4").Value

Workbooks.Open Filename:= _
"C:\Dokumente und Einstellungen\bhe224\Desktop\PVA\Labor Berichte (fertig - überprüfen)\Vorlagen für Berichte\Bericht Komplettuntersuchung Vorlage.xls"
Sheets("Abmessungen").Select

For i = 1 To Sheets.Count
Sheets(i).Unprotect ("Passwort")
Next i

Windows(Aktiv).Activate

...NÄCHSTES MAKRO...

Sheets("Labor Eingabemaske1").Select
Columns("B1:C100").Select HIER FEHLER HIER FEHLER HIER FEHLER



Gruß,

Florian


Bild


Betrifft: AW: Leider Nicht
von: Carsten
Geschrieben am: 03.12.2003 09:19:55

Hallo Florian,

wie wäre es mit "Range("B1:C100").select ;-)

Gruß
Carsten


Bild


Betrifft: Schon probiert, selbes Problem
von: Florian
Geschrieben am: 03.12.2003 09:29:56

Hi Ihr!

Schon probiert, selbes Problem


Bild


Betrifft: AW: Schon probiert, selbes Problem
von: Carsten
Geschrieben am: 03.12.2003 09:38:46

Dann poste mal den gesamten Code.

Gruß
Carsten


Bild


Betrifft: AW: Schon probiert, selbes Problem
von: Florian
Geschrieben am: 03.12.2003 10:17:33

Hi Carsten!

Coole Sache! Der gesamten Code wäre wohl aber etwas viel und komplex, ich habe ihn aus allen möglichen Problemstellungen im Forum zusammengestückelt und mit meinen sehr begrenzten Mitteln angepasst.

Hoffe Du kannst mit folgendem was angangen:(BERICHT KOMPLETTUNTERSUCHUNG VORLAGE ist die 3.MAPPE, wo das ganze Zeug dann landen soll

MAPPE 1:

Windows("MAPPE2").aktivate
Sheets("Auswahlformular").Select
Range("A14").Select
Selection.AutoFill Destination:=Range("A14:A40"), Type:=xlFillDefault
Range("A12").Select
'Werte einsetzten
Sheets("Auswahlformular").Select
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("B4:C5").Select
Application.CutCopyMode = False
'Blattschutz setzen
For i = 1 To Sheets.Count
Sheets(i).Protect ("Passwort")
Next i


Workbooks("Datenbank HARTMANN-Produkte.xls").Close SaveChanges:=False
Workbooks("PVA Datenbank.xls").Close SaveChanges:=False

'Speichern in Laborordner
If Range("A1") = "Laborprüfung Auswahlformular Singleuntersuchung" Then
Speicherort = ThisWorkbook.Path & "\LABOR (offene PVA`s)\Singleuntersuchungen\"
End If
If Range("A1") = "Laborprüfung Auswahlformular Komplettuntersuchung" Then
Speicherort = ThisWorkbook.Path & "\LABOR (offene PVA`s)\Komplettuntersuchungen\"
End If

Datei = Range("d4").Value
Pfad = Speicherort & Datei
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Pfad
Application.DisplayAlerts = True


End Sub


MAPPE 2:
BUTTON1:


Private Sub CommandButton4_Click()
For i = 1 To Sheets.Count
Sheets(i).Unprotect ("Passwort")
Next i
Aktiv = Range("D4").Value
Workbooks.Open Filename:= _
"C:\Dokumente und Einstellungen\bhe224\Desktop\PVA\Labor Berichte (fertig - überprüfen)\Vorlagen für Berichte\Bericht Komplettuntersuchung Vorlage.xls"
Sheets("Abmessungen").Select
For i = 1 To Sheets.Count
Sheets(i).Unprotect ("Passwort")
Next i
Windows("TPE-PVA 03 008.xls").Activate
End Sub


BUTTON2:

Sheets("Labor Eingabemaske1").Select
Range("B1:C100").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="S"
Selection.AutoFilter Field:=2, Criteria1:="=abmessung*", Operator:=xlAnd
Range("D1:M1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("Bericht Komplettuntersuchung Vorlage.xls").Activate
Range("B7").Select
ActiveSheet.Paste

Vielen Dank für Deine Mühe!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!



Bild


Betrifft: AW: Schon probiert, selbes Problem
von: Florian
Geschrieben am: 03.12.2003 11:17:29

Hi There!

Glaube jetzt klappt es. Ich hatte die Makro`s auf Buttons der Steuerelemententoolbox gelegt, mit welchen aus dem Formular schein es zu funktionieren. Hat es was damit zu tun, das die Formularmakros nicht im Tabellenblatt gespeichert sind, sondern als Modul?

Ich hoffe ich habe Euch nicht mit einem zu billigen Anfängerfehler die Zeit gestohlen!
Vielen Dank für Eure Hilfe, wünsche Euch einen schönen Tag und hoffe Ihr helft mir trotzdem mal wieder!

Schöne Grüße,

Florian


Bild


Betrifft: AW: Schon probiert, selbes Problem
von: Martin Beck
Geschrieben am: 03.12.2003 11:25:30

Hallo Florian,

Schuß in's Blaue: Setze mal in den Steuerelement-Toolbox-Buttons die TakeFocusOnClick-Eigenschaft auf FALSE.

Gruß
Martin Beck


Bild


Betrifft: AW: Schon probiert, selbes Problem
von: Florian
Geschrieben am: 03.12.2003 14:02:29

Hi Martin!

Danke, funktioniert wunderbar! Ich hoffe irgendwann auch ein Programm schreiben zu können ohne allzu viele Umwege gehen zu müssen!

Schöne Grüße,

Florian


Bild


Betrifft: AW: Leider Nicht
von: Michael
Geschrieben am: 03.12.2003 09:22:53

versuchs mal mit:
Range("B1:C100").Select
cu Michael


Bild


Betrifft: AW: Leider Nicht
von: Michael
Geschrieben am: 03.12.2003 09:50:36

hi,
Windows(Aktiv).Activate <-- was soll das ? schmeiss mal raus ;-)
ansonsten funktionierts bei mir
cu Michael


Bild


Betrifft: AW: Leider Nicht
von: Florian
Geschrieben am: 03.12.2003 10:03:44

Könnte mein Problem darin liegen das ich Bin Spalte A des zu kopierenden Arbeitsblattes einen Button und Hyperlinks habe? Auch wenn ich in allen Markos den Schutzbefehl entferne klappt es trotzdem nicht mit Range().select.

Aktiv = Range("D4").Value und Windows(Aktiv).Activate ist meine etwas holprige Methode, um die 2. Mappe nach dem aktivieren der 3. wieder zu öffnen, da die 2.Mappe immer verschiede Nummern hat (beginnt mit TPE-PVA....), aber ich krieg das sicher irgenwie eleganter hin, so mit OpenWorkbook Left(7 = "TPE-PVA)... aber das ist eine andere Baustelle...

Aber danke erstmal für Deine Mühe, soll ich Dir `nen Kaffee mailen?

Flori


Bild


Betrifft: Kaffee :-)
von: Michael
Geschrieben am: 03.12.2003 10:16:01

thanks
wenn du wirklich nicht weiterkommst müsstest du mal die arbeitsmappe hochladen oder eben den kompletten code posten
cu Michael


Bild


Betrifft: AW: Kaffee :-)
von: Florian
Geschrieben am: 03.12.2003 10:32:36

Hi Michael!

Habe Carsten mal einen Teil des Codes gepostet, würde Euch gerne alles schicken, aber ich will Excel teilweise als eine Art Datenbank mißbrauchen (ich weiß, das Programm heißt Access, aber ich habe eine sehr spezielle Problemstellung für ein Labor). Der gesamte Schmu hat so ungefähr 40MB, da würde ich Eure Geduld wohl etwas überstrapazieren;-).

Flori


Bild


Betrifft: AW: Kaffee :-)
von: Florian
Geschrieben am: 03.12.2003 11:16:32

Hi There!

Glaube jetzt klappt es. Ich hatte die Makro`s auf Buttons der Steuerelemententoolbox gelegt, mit welchen aus dem Formular schein es zu funktionieren. Hat es was damit zu tun, das die Formularmakros nicht im Tabellenblatt gespeichert sind, sondern als Modul?

Ich hoffe ich habe Euch nicht mit einem zu billigen Anfängerfehler die Zeit gestohlen!
Vielen Dank für Eure Hilfe, wünsche Euch einen schönen Tag und hoffe Ihr helft mir trotzdem mal wieder!

Schöne Grüße,

Florian


Bild

Beiträge aus den Excel-Beispielen zum Thema " Blattschutz aufheben - Select - letzte Rettung?"