Clever-Excel-Forum

Normale Version: Ausgewählten Bereich, als gedruckt markieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo, ich habe ein folgendes Problem und hoffe Ihr könnt mir dabei helfen.
In meiner Tabelle (Spalte A-AF) stehen Werte für diverse Aufträge.
In der Zeile 1-3 stehen die Werte für ein und dieselben Auftragsnummer.
Nach dem ich die komplette Zeilen 1-3 markiert habe und die Tastkombi betätige, geht folgendes Makro los.


Code:
Sub MakroDruck()
'
' Makro1 Makro
' Drucken
'
' Tastenkombination: Strg+y
'
    
    Selection.Copy
        Sheets("DATEN").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
        Sheets("DRUCK").Select
        If Cells(66, 17) = "" Then
        Rows("66:200").Hidden = True
        Else
        Rows("66:200").Hidden = False
End If
        Range("F8:G8").Select
        ActiveCell.Value = ActiveCell.Value + 1
        ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
        Application.Dialogs(xlDialogSaveAs).Show Range("D8").Value & " " & Range("F8").Value & " AB " & Range("Q4").Value
        Rows("1:250").Select
        Selection.EntireRow.Hidden = False
    Sheets("DATEN").Select
        Rows("2:12").Select
        Range("D2").Activate
        Selection.ClearContents
        Rows("2:2").Select
        Range("D2").Activate
        Sheets("AUFTRÄGE").Select
End Sub

Im Grunde soll in der Spalte F, alle markierten Zellen ein "G" (für gedruckt) erhalten.
Dabei ist es wichtig das die Auswahl nicht von A-AF markiert wird sondern ganze Zeilen.

Geht das überhaupt?
Vielen Dank schon mal im Voraus!
Hallo,

Zitat:Dabei ist es wichtig das die Auswahl nicht von A-AF markiert wird sondern ganze Zeilen.

... da ich nicht glauben kann, daß Du in jeder Zelle Deiner Zeile ein "G" sehen willst, in welcher
Spalte willst Du das "G" denn haben?

Ups: da werde ich eventuell noch ein paar Fragen haben. Ich habe festgestellt, nicht wirklich alles
verstanden zu haben.
Löschen wollte ich meine Frage aber nun auch nicht :19:
Hallöchen,

die Gretchenfrage ist, ob eine ganze Zeile markiert ist?

Du könntest z.B. prüfen, ob die Selection.Columns.Count gleich der Columns.Count ist. Allerdings würde das nicht differenzieren, wenn Du z.B. anderthalb Zeilen markiert hast.
Hallo, Sie haben Recht Hr. Blaubär! :19: ich möchte nur in der Spalte F ein "G" stehen.

Sorry, da ich ein Anfänger in VBA bin kann ich deiner Antwort nicht folgen. schauan

[attachment=24578]
Hallöchen,

Der Anfang Deines Makros könnte dann so aussehen. Ich habe die Prüfung mit der ganzen Zeile dabei. Wenn Du keine ganze Zeile markiert hast, dann wird auch kein G eingetragen.

Sub MakroDruck()
'
' Makro1 Makro
' Drucken
'
' Tastenkombination: Strg+y
'
If Selection.Columns.Count = Columns.Count Then Selection.Columns("F").Value = "G"
Selection.Copy
Hallo schauan, vielen Dank dafür!
Klappt super. Kannst du mir das Makro erklären?
Moin!
Es wurde ja reichen, die Schnittmenge zu beschreiben:
Code:
Intersect(Selection, Columns(6)) = "G"

Dann braucht es keine Prüfung mehr, wenn keine Schnittmenge, wird auch nix beschrieben.

Gruß Ralf

Ich muss meine Antwort berichtigen …
Geht doch nur mit Prüfung:
Code:
Sub G_Eintrag()
Dim Spalte_F As Range
Set Spalte_F = Intersect(Selection, Columns(6))
If Not Spalte_F Is Nothing Then Spalte_F = "G"
End Sub
Hallöchen,

der Teil
If Selection.Columns.Count = Columns.Count

prüft, ob die Anzahl der gewählten Spalten gleich der Anzahl aller Spalten ist

und der Teil
Selection.Columns("F").Value = "G"

füllt dann alle Zellen in Spalte F der gewählten Zeilen mit "G"

Aber, wie gesagt, falls Du eine ganze Zeile wählst und dann noch ein paar Zellen in anderen Zeilen kommt in den anderen Zeilen auch ein G rein. Könnte man ja bei gedrückter STRG-Taste und mit der Maus machen. Oder Du wählst eine ganze Zeile, nimmst mit STRG dort eine Zelle raus und wählst darunter eine in der Spalte der rausgenommenen. Dann hast Du auch in allen Spalten was gewählt, aber keine komplette Zeile …

@Ralf - Bedingung war, dass eine ganze Zeile selectiert ist.
Vielen lieben Dank.