Jean und Arnoldo stellten diese Woche die Excel-Frage.
In Lotus 1-2-3 können Sie das Drucken einer Zeile unterdrücken, indem das erste Zeichen ein Pipe-Zeichen (|) ist. Das war cool, weil man in Spalte A eine Formel haben konnte, mit der das Drucken von Zeilen mit Null unterdrückt werden konnte : @IF(E2=0,"|","")
. Excel scheint diese Funktion nicht zu bieten. Ich möchte die Zeilen nicht ausblenden, sondern nur das Drucken in Excel unterdrücken.
MrExcel kann sich in Ihre Situation einfühlen. Ich habe Lotus 1-2-3 8 Jahre lang verwendet, bevor sich mein Unternehmen für Excel als neuen Standard entschieden hat. Wechseln ist nie schön. Excel und Lotus sind ähnlich, aber die Hauptbenutzer von Lotus 1-2-3 neigen dazu, auf die Probleme zu stoßen.
Einige Jahre nach dem Übergang bin ich der Meinung, dass Excel besser ist als Lotus. Ich bin mir jedoch der Schmerzen beim Wechsel sehr bewusst. Es ist einfach, die Änderungen als persönlichen Angriff zu betrachten und sich über Microsoft zu ärgern. Ich erinnere mich, dass ich täglich gedacht habe: "WARUM muss ich in all meinen @VLOOKUPs ein ', False' als letztes Argument setzen, und warum kommt die Hilfedatei nicht heraus und sagt mir das einfach?".
Wenn Sie Makros haben, die in Lotus 1-2-3 aufgezeichnet wurden, denken Sie daran, dass Sie Consulting by für die Makrokonvertierung verwenden können.
Es gibt einige Dinge, die Lotus 1-2-3 problemlos erledigt hat und die in Excel nicht verfügbar sind. Die schöne Einfachheit von / File Combine Add Entire in Lotus wird in Excel durch 8 Schritte ersetzt.
Die heutige Frage mit der Pipe zur Unterdrückung des Druckens der Zeilen ist ein weiteres Beispiel, bei dem Excel keine ähnliche Funktion bietet. Das folgende LotusPrint-Makro simuliert diese Funktion. Es ist schrecklich ineffizient. Das Makro untersucht jede Zelle im aktiven Bereich von Spalte A. Wenn eine Pipe gefunden wird, wird die Zeile ausgeblendet. Anschließend wird das Arbeitsblatt gedruckt und die ausgeblendeten Zeilen wieder ausgeblendet.
Option Base 1 Sub LotusPrint() ' ' LotusPrint Macro ' This Macro will temporarily hide rows that start with |, ' print the sheet, then unhide those rows. It is meant to ' emulate the Lotus 1-2-3 feature of not printing rows that ' start with a pipe. ' Copyright 1999 www.MrExcel.com ' ' Dim UnhideRow() As Single Application.ScreenUpdating = False ' Locate the final row in column A FinalRow = Range("A65536").End(xlUp).Row Ctr = 0 ' Check and hide each row that starts with a pipe For x = 1 To FinalRow If Left(Range("A" & x).Value, 1) = "|" Then ' Do nothing if the row is already hidden If Not Range("A" & x).EntireRow.Hidden Then Range("A" & x).EntireRow.Hidden = True ' Save the row number so that it can be unhidden Ctr = Ctr + 1 ReDim Preserve UnhideRow(Ctr) UnhideRow(Ctr) = x End If End If Next x ' Print the sheet ActiveWindow.SelectedSheets.PrintOut ' Unhide any hidden rows If Ctr> 0 Then For x = 1 To Ctr Range("A" & UnhideRow(x)).EntireRow.Hidden = False Next x End If Application.ScreenUpdating = True End Sub