Ausgewählten Bereich, als gedruckt markieren
#1
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!
Top
#2
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:
Top
#3
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.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#4
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


.xlsm   DK84.xlsm (Größe: 376,19 KB / Downloads: 1)
Top
#5
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
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#6
Hallo schauan, vielen Dank dafür!
Klappt super. Kannst du mir das Makro erklären?
Top
#7
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
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#8
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.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#9
Vielen lieben Dank.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste