MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Word
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 09.01.2019, 16:42   #1
JuMathias
MOF Profi
MOF Profi
Standard Word 2013 - Problem: Zumutbare Laufzeiten?

Hallo versierte VBA-Entwickler unter WORD,

in dem Beispiel der angefügten Datei teste ich Laufzeiten eines Makros.
Vorschlag: Einfach 'mal die Datei runterladen und 1 Minute testen.
Ich stehe auf dem Berg und warte auf Rauchzeichen ...

Ein Dankeschön für Tests und eine ehrliche Antwort,
Hinweise und Vorschläge.


Gruß

JuMathias
Angehängte Dateien
Dateityp: docm FürForum - Tabelle 01 - trotzdem ... Laufzeiten noch erträglich.docm (71,3 KB, 2x aufgerufen)
JuMathias ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 09.01.2019, 20:45   #2
JuMathias
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard

Hallo zusammen,

um die drei VBA-Zeilen "Bremse Schutz" zu umgeben,
probiere ich am Abend mal:

Code:

With ActiveDocument
   'PA-Wert (Spalte: 4) - Eintrag vorhanden?
     
   If Len(ArbeitsTabelle.Cell(zeile, 4).Range.FormFields(1).Result) = 0 Then

      ArbeitsTabelle.Cell(zeile, 4).Range.FormFields(1).Range.Font.ColorIndex = wdRed
      ArbeitsTabelle.Cell(zeile, 13).Range.Text = "Fail"
      ArbeitsTabelle.Cell(zeile, 13).Range.FormFields(1).Range.Font.ColorIndex = wdRed
      MsgBox "Displayfeld ausfüllen!"
      Exit Sub
   Else
      ArbeitsTabelle.Cell(zeile, 4).Range.FormFields(1).Range.Font.ColorIndex = wdGreen
   End If

Ein Dankschön dem VBA-Experten (der sich nun angesprochen fühlen darf) & Gruß

JuMathias
JuMathias ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 09.01.2019, 21:28   #3
JuMathias
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard Laufzeitminimierung (Schritt 1)

Hallo Gerhard,

die Laufzeitbremse

With ActiveDocument
If .ProtectionType <> wdNoProtection Then .Unprotect


habe ich entfernt. VBA Läuft soweit bestens,
was die Laufzeiten anbetrifft. Die Reduzierung der Laufzeiten sind super.


(Leider) nun letztes Nachfolgeproblem:

Der Schutz muss aufgehoben werden,
wenn in der letzten Tabellenspalte das Ergebnis Pass bzw. Fail
gesetzt werden muss.
Dann sind wir wahrscheinlich leider wieder beim Showkiller "Laufzeiten".

Hintergrund: Die Ergebnisse müssen schreibgeschützt sein.
Mein schlechtester Workaround wäre
(den bekomme ich thematisch nicht durch):

Die Beurteilungs-Strings in eine DropDown schreiben,
wie ich 2018 mal angedacht hatte,
und wenn das Protokoll gespeichert wird, die Datei schreibgeschützt abspeichern.

Wieder bildlich gesprochen:
Der Ball liegt eigentlich schon auf dem Elfmeterpunkt


Gruß

JuMathias
JuMathias ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 09.01.2019, 23:21   #4
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo Mathias,

"Der Schutz muss aufgehoben werden,
wenn in der letzten Tabellenspalte das Ergebnis Pass bzw. Fail
gesetzt werden muss.
"

Dann schreib das doch in ein weiteres Formularfeld. Nein, nicht in ein Formular-Dropdown, sondern in ein Text-Formularfeld.

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 09.01.2019, 23:59   #5
JuMathias
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard Hinweis zum Lösungsvorschlag

Hallo Gerhard,

ob ich es in ein DD oder Textfeld reinschreibe ist unter folgendem Aspekt immer schlecht:

Das Steuerelement ist nicht schreibgeschützt.
D.h.: Jeder Dödel kann den Eintrag

"Fail" bzw. "Pass" (Ergebnis) manipulieren, wenn der Dödel den Display-Wert setzt. Nach Setzen des Display-Wert wird dieser auf Plausibilität geprüft.
Und das Ergebnis soll schreibgeschützt sein, wenn das Display-Feld verlassen wird.

Das ist die Anforderung.

Gruß

JuMathias
JuMathias ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.01.2019, 00:58   #6
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo Matthias,

du kannst das Ergebnis trotzdem in ein Formularfeld schreiben und dieses dann gegen weitere Eingaben sperren. Ein Aufheben des Dokumentschutzes ist dazu nicht nötig. Beispiel:

Code:

If Len(ArbeitsTabelle.Cell(zeile, 4).Range.FormFields(1).Result) = 0 Then

	Arbeitstabelle.cell(zeile, 13).Range.FormFields(1).Enabled = true	
	ArbeitsTabelle.Cell(zeile, 13).Range.formfields(1).Result = "Fail"
	ArbeitsTabelle.Cell(zeile, 13).Range.FormFields(1).Range.Font.ColorIndex = wdRed
	Arbeitstabelle.cell(zeile, 13).Range.FormFields(1).Enabled = false
	'...
Else
	'...
End if

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.01.2019, 09:46   #7
JuMathias
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard Laufzeitreduzierung (Status: Abgeschlossen)

Guten Morgen Gerhard,

nun ist mir schon einmal bekannt, dass es zweimal VBA zum Thema "Schutz" gibt:

- ....Enabled = true >> direkt für ein Steuerelement

- With ActiveDocument
If .ProtectionType <> wdNoProtection Then .Unprotect >> ganze Dokument

Dankeschön.
Die Laufzeiten haben sich auch ein wenig verringert.

JuMathias
JuMathias ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:57 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.