Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
376to380
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
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ColorIndex

ColorIndex
06.02.2004 17:48:43
spidi
Hallo zusammen,
Wer kann mir helfen? Ich habe da ein ganz komisches Problem.
Ich habe mit Excel 2000 (Office 2000)ein Makro aufgezeichnet, welches die Schriftfarbe ändert.
Bei mir funktioniert das bestens.
Da das einige Leute aus meinem Umfeld auch brauchen, habe ich diese Excel-Mappe mit eben diesem Makro gleichzeitig an alle Leute (10 Personen)per E-Mail gesandt.
Bei sieben dieser zehn Personen funktioniert dieses Makro perfekt. Bei den anderen drei kommt die Fehlermeldung:
Laufzeitfehler '1004'
Die ColorIndex Eigenschaft des Font Objekts kann nicht festgelegt werden.
Diese drei haben mir dann das Makro mit dieser Fehlermeldung wieder zurück gemailt und bei mir funktioniert es wieder perfekt.
Nun bin ich darauf gekommen, dass diese drei Personen, bei denen diese Fehlermeldung kommt, das Office XP haben.
Kann es sein, dass da im Makro beim XP nicht genau dasselbe steht, wie im Makro beim 2000 ?
Wenn ja, wo muss ich was ändern, dass dieses Makro auch beim XP funktioniert.
Hier das Makro im Excel 2000:
Range("A5").Select
ActiveCell.FormulaR1C1 = "=SUM(R[19]C[2]:R[44]C[2])-(R[19]C[2]:R[44]C[2])"
Range("a6").Select
ActiveWindow.SmallScroll Down:=13
Range("B20:C52").Select
Selection.Font.ColorIndex = 2
Range("C50").Select
Selection.Font.ColorIndex = 15
Range("A1:J1").Select
Sheets("Graphik ").Select
Range("C6").Select
Selection.ClearContents
Range("C7:C16").Select
Selection.Font.ColorIndex = 2
Range("A1").Select
Sheets("Variantenvergleich ").Select
End Sub
Für Eure Hilfe schon im Voraus 10'000 Dankeschön.
Viele Grüsse
Spidi

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ColorIndex
06.02.2004 17:59:14
Nepumuk
Hallo ? (hast du auch einen richtigen Namen?)
etwas nervös heute, weil zweimal die selbe Anfrage im Minutentakt? Die Fehlermeldung kann eigentlich nur kommen, wenn die Tabelle geschützt ist.
Gruß
Nepumuk
AW: ColorIndex
06.02.2004 23:30:52
spidi
Hallo Nepomuk,
Zuerst einmal entschuldigung. Ich habe aus Versehen diese Anfrage gleich zweimal gesandt.
Im Prinzip hast Du recht, diese Fehlermeldung kommt nur, wenn die Tabelle geschützt ist.
Aber warum funktioniert sie trotz geschützer Tabelle bei mir mit Office 2000 perfekt ? und bei den Kollegen mit Office XP nicht ???
Und wenn die Kollegen, bei denen es nicht funktioniert mir die Tabelle geschützt zurück mailen, funktioniert es bei mir, trotz geschützter Tabelle.
Es muss also irgendwo mit Office 2000 und Office XP zusammenhängen.
Was schreibt es in Office 2000 anders als in Office XP ?
Kannst Du mir oder jemand anders weiterhelfen.
Ich habe einen anderen Namen, nämlich René. Aber mit dem Synonym finde ich meine Anfrage viel schneller.
Gruss und einen schönen Abend
Spidi, resp. René
Anzeige
AW: ColorIndex
07.02.2004 08:49:59
Nepumuk
Hallo René,
wenn du den Blattschutz in XP aktivieren willst, siehst du, das es dort wesentlich mehr Optionen zur Auswahl gibt, als in 2000. Schreib folgende Routine in das Klasssenmodul "DieseArbeitsmappe". In das gelangst du, wenn du auf das Excelicon in der Menüleiste neben "Datei" einen Rechtsklick machst und im Kontextmenü "Code anzeigen" anklickst.

Option Explicit
Private Sub Workbook_Open()
Dim myWorksheet As Worksheet
For Each myWorksheet In ThisWorkbook.Worksheets
myWorksheet.Protect Password:="Deine Kennwort", UserInterfaceOnly:=True
Next
End Sub


Code eingefügt mit: Excel Code Jeanie
Das Kennwort musst du natürlich noch anpassen.
Gruß
Nepumuk
Anzeige
AW: ColorIndex
07.02.2004 09:33:00
spidi
Hallo Nepomuk,
Nur noch zu meiner Verständigung:
Wo muss ich diese Routine schreiben ?
Im Excel 2000 oder im Excel XP ?
Ich selber habe das Office XP nicht.
Kann ich also das Excel-File vom 2000 kopieren und als zweites File (unter aderem Namen)
bei mir im Office 2000 speichern. Danach diese Routine beim zweiten File einfügen, damit ich denjenigen, welche XP haben das geänderte File und denen mit dem 2000 das vorhandene File senden kann ?
Oder muss ich bei allen, die das XP haben separat auf deren Rechner diese Routine einfügen ?
Nochmals zur Erinnerung:
Ich habe bei mir im 2000 das Arbeitsblatt geschützt und es funktioniert.
Beim XP kommt bei aktiviertem Schutz die Fehlermeldung. Wenn das Arbeitsblatt nicht geschützt ist, kommt zwar dieselbe Fehlermeldung, wenn ich aber Beenden anklicke, wird das Makro ausgeführt.
Vielen Dank für Deine Antwort.
Gruss René
Anzeige
AW: ColorIndex
07.02.2004 09:46:11
Nepumuk
Hallo René,
das sollte ab Excel95 aufwärts so funktionieren. Also einfach für alle einbauen.
Gruß
Nepumuk
AW: ColorIndex
07.02.2004 12:53:50
spidi
Hi Nepomuk,
Bitte entschuldige, aber ich bin etwas schwer von Begriff.
Ich wiederhole:
Ich gebe diese Routine bei mir im Excel 2000 ein, verschicke es und diejenigen, die Excel XP haben, können das Makro dann ohne Fehler betätigen.
Ich gehe in die entsprechende Tabelle, klicke neben Datei mit der rechten Maustaste auf das Excel-Icon und anschliessend auf Code anzeigen.
Danach gebe ich folgenden Text ein:
Option Explicit

Private Sub Workbook_Open()
Dim myWorksheetAs Worksheet
For Each myWorksheet In ThisWorkbook.Worksheets
myWorksheet.Protect Password:="Deine Kennwort",UserInterfaceOnly:=True
Next
End Sub

a) Muss ich Option Explicit auch schreiben ?
b) Muss ich beim Schreiben auch diese Abstände machen ?
c) Stimmen die Zeichen (Komma, Punkte) und die Abstände ?
d) Bei "Deine Kennwort" muss ich da mein Passort (z.B. 123456) eingeben und
muss ich vor und nach dem Passwort auch diese Zeichen " " eingeben ?
e) Ist mein Kennwort nun für alle ersichtlich, welche in diesen Code gehen oder
kann man dieses Passwort noch verstecken ?
Und als letztes:
Wenn ich dieses Makro in der Tabelle 1 betätige, ändert nicht nur in dieser Tabelle die Schriftfarbe, sondern auch in der Tabelle 2.
Muss ich nun diesen Code auch in der Tabelle 2 eingeben, oder gilt das generell für
alle Tabellen in diesem Excel-File.
Ich hoffe, dass ich Dich danach nicht mehr mit solchen Fragen nerven muss.
Nichts für ungut und vorerst noch einmal vielen Dank.
René
Anzeige
AW: ColorIndex
07.02.2004 13:34:55
Nepumuk
Hallo René,
a) Option Explicit zwingt dich alle verwendeten Variablen zu deklarieren.(Hilft Schreibfehler und damit das Suchen nach Programmfehlern zu vermeiden und steht bei mir über jedem Modul).
b) Kopiere den Code einfach.
c) Der Code ist getestet.
d) Ja, die Anführungszeichen sind zwingend, das Excel dein Kennwort sonst als Variable interpretiert.
e) Im Prinzip ja. Du kannst natürlich das VBA-Projekt schützen (Extras - Eigenschaften von VBAProjekt - Schutz) Aber, den Blattschutz knacke ich dir in ca. einer Sekunde, den Projektschutz in ca. fünf Sekunden. Es gibt keinen absoluten Schutz, außer du startest die Datei über eine .exe - Datei in der dieser Code läuft. Dazu benötigst du aber eine Programmiersprache wie C oder VB.
f) Das Makro ändert nichts, sondern durch die Option "UserInterfaceOnly", können Makros in geschützten Tabellen Änderungen vornehmen.
g) Mit der Schleife: For Each ... Next, ist jedes Element der Objektauflistung (in dem Fall die Tabellen in der Mappe) betroffen.
Gruß
Nepumuk
Anzeige
AW: ColorIndex
08.02.2004 12:33:38
Nepomuk
Hallo Nepomuk,
Vorerst tausend Dank für Deine Geduld und Deine Mühe.
Ich werde nun machen, was Du mir beschrieben hast.
Ich informiere Dich auf jeden Fall, ob es geklappt hat.
Nochmals vielen, vielen Dank.
Ich wünsche Dir ein wunderschönes Wochenende.
Gruss
René
AW: ColorIndex
08.02.2004 17:29:48
spidi
Hallo Nepomuk,
Es hat wunderbar geklappt. Von zwei der drei Kollegen, bei denen es vorher nicht funktioniert hat, habe ich bereits eine positive Rückmeldung erhalten. Ich nehme an, dass es beim dritten auch klappt.
Also nochmals allerherzlichsten Dank für Deine Hilfe.
Viele Grüsse
René
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige