Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1104to1108
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

Automatische Anpassung der Druckangaben per VBA

Automatische Anpassung der Druckangaben per VBA
Salim

Hallo Zusammen,
Ich hatte ein kleines Thema, der euch wahrscheinlich sehr einfach erscheint, mir aber leider nicht ;)
Ich habe folgende Eingaben :
Blatt1 : Zelle E19 : Eingabes eines Wortes mit weniger als 20 Zeichen
Blatt1 : Zelle E22 : Eingabes eines Wortes mit weniger als 20 Zeichen
Blatt1 : Zelle E24 : Eingabes eines Datums
Ich versuche folgendes zu machen :
Falls eine der oben genannten Zelle geandert wird, soll ein VBA-Code automatisch ausgeloest werden so dass meine Druckangaben fuer alle Blaetter (ausser Blatt1) folgendermassen geandert werden :
Oben links soll beim Drucken auf jedes Blatt (ausser Blatt1) erscheinen :
Name : Text aus Zelle E19 des Blattes 1 (Groesse 10, Arial, Fett)
Name 2 : Text aus Zelle E22 des Blattes 1 (Groesse 10, Arial, Fett)
Datum: Datum aus Zelle E24 des Blattes 1 (Groesse 10, Arial, Fett)
Wer kann mir da helfen, bitte?
Vielen Dank im Voraus
Salim

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Automatische Anpassung der Druckangaben per VBA
01.10.2009 20:39:01
Josef
Hallo Salim,
kopiere diesen Code in das Modul von "Blatt1".
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim objSh As Worksheet, strHeader As String
  
  If Not Intersect(Target, Range("E19,E22,E24")) Is Nothing Then
    strHeader = Me.Range("E19").Text & ", " & Me.Range("E22").Text & ", " & Me.Range("E24").Text
    
    For Each objSh In ThisWorkbook.Worksheets
      If Not objSh Is Me Then
        objSh.PageSetup.LeftHeader = "&""Arial,Bold""&10" & strHeader
      End If
    Next
    
  End If
  
End Sub

Gruß Sepp

Anzeige
AW: Automatische Anpassung der Druckangaben per VBA
01.10.2009 23:04:58
Salim
Hallo Sepp,
Vielen Dank, es funktioniert. Nur 2 Sachen haette ich noch ;)
Dein Code benoetigt relativ lange zum ausfuehren (fuer 25 Tabellen), ungefaehr 20 sekunden. Kann man das optimieren ?
Die zweite Sache ist, Ich haette den Header gerne folgendermassen gehabt :
Nicht
Name, Name, Datum
Sondern
Name : + Text aus Zelle E19 - Ergebnis sieht so aus - Name : Paul
Name : + Text aus Zelle E22 - Ergebnis sieht so aus - Name : Anna
Datum : + Datum aus Zelle E24 - Ergebnis sieht so aus - Datum : 01. Oktober 2009
Ist es moeglich ? Vielen Dank
Salim
Anzeige
AW: Automatische Anpassung der Druckangaben per VBA
02.10.2009 10:33:29
Rudi
Hallo,
1. Die Seiteneinrichtung per VBA ist grottenlahm. Das lässt sich auch nicht ändern.
Evtl. solltest du den Code in Workbook_BeforePrint auslagern und nur auf das zu druckende Sheet anwenden.
2.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim objSh As Worksheet, strHeader As String
If Not Intersect(Target, Range("E19,E22,E24")) Is Nothing Then
strHeader = "Name: " & Me.Range("E19").Text _
& vbLf & "Name: " & Me.Range("E22").Text _
& vbLf & "Datum: " & Format(Me.Range("E24"), "DD.MMMM YYYY")
For Each objSh In ThisWorkbook.Worksheets
If Not objSh Is Me Then
objSh.PageSetup.LeftHeader = "&""Arial,Bold""&10" & strHeader
End If
Next
End If
End Sub

Gruß
Rudi
Anzeige
AW: Automatische Anpassung der Druckangaben per VBA
02.10.2009 11:38:25
Salim
Herzlichen Dank !

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige