Zatiranje vrstic med tiskanjem - Excel Nasveti

Jean in Arnoldo sta ta teden postavila vprašanje Excel.

V Lotusu 1-2-3 lahko onemogočite tiskanje vrstice tako, da je prvi znak cevni znak (|). To je bilo super, ker bi lahko imeli v stolpcu A formulo, s katero bi lahko natisnili vrstice z ničlo @IF(E2=0,"|",""). Zdi se, da Excel ne ponuja te funkcije. Ne želim skriti vrstic, samo želim zatreti njihovo tiskanje v Excelu.

MrExcel se lahko vživi v vašo situacijo. Lotus 1-2-3 sem uporabljal osem let, preden se je moje podjetje odločilo za Excel kot nov standard. Preklapljanje ni nikoli lepo. Excel in Lotus sta si podobna, toda močni uporabniki Lotusa 1-2-3 naletijo na težave.

Nekaj ​​let po prehodu se mi zdi, da je Excel boljši od Lotusa. Vendar se globoko zavedam bolečine, ki je potrebna pri preklopu. Spremembe je enostavno jemati kot osebni napad in biti jezen na Microsoft. Spomnim se, da sem vsak dan razmišljal: "ZAKAJ moram kot zadnji argument v vseh svojih @VLOOKUP-ih postaviti 'False' in zakaj datoteka s pomočjo ne izide in mi preprosto pove?"

Če imate makre, zabeležene v Lotusu 1-2-3, ne pozabite, da lahko za pretvorbo makrov uporabite Consulting by.

Lotus 1-2-3 je z lahkoto naredil nekaj stvari, ki niso na voljo v Excelu. Čudovita preprostost / File Combine Add Entire v Lotusu je v Excelu nadomeščena z 8 koraki.

Današnje vprašanje s cevjo za zatiranje tiskanja vrstic je še en primer, ko Excel ne ponuja podobne funkcije. Spodnji makro LotusPrint bo simuliral to funkcijo. Je strašno neučinkovit. Makro pregleda vsako celico v aktivnem obsegu stolpca A. Ko najde cev, skrije vrstico. Nato natisne delovni list in se vrne nazaj, da razkrije skrite vrstice.

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

Zanimive Članki...