Estä rivit tulostuksen aikana - Excel-vinkit

Jean ja Arnoldo esittivät tämän viikon Excel-kysymyksen.

Lotuksessa 1-2-3 voit estää rivin tulostuksen asettamalla ensimmäisen merkin putkimerkiksi (|). Tämä oli siistiä, koska voisi olla kaava A sarakkeessa, joita voidaan käyttää vaimentamaan viivojen nolla: @IF(E2=0,"|",""). Excel ei näytä tarjoavan tätä ominaisuutta. En halua piilottaa rivejä, haluan vain estää niiden tulostamisen Excelissä.

MrExcel voi tuntea tilanteesi. Käytin Lotusta 1-2-3 kahdeksan vuoden ajan, ennen kuin yritykseni päätti Excelistä uudeksi standardiksi. Vaihto ei ole koskaan kaunis. Excel ja Lotus ovat samanlaisia, mutta Lotus 1-2-3: n tehokäyttäjät törmäävät ongelmiin.

Useita vuosia siirtymisen jälkeen tunnen nyt Excelin olevan parempi kuin Lotus. Olen kuitenkin tietoinen vaihdosta vaadittavasta kivusta. Muutoksia on helppo pitää henkilökohtaisena hyökkäyksenä ja olla vihainen Microsoftille. Muistan ajatellessani päivittäin: "MIKSI minun täytyy laittaa" väärä "viimeiseksi argumentiksi kaikkiin @VLOOKUP-tiedostoihini, ja miksi ohjetiedosto ei tule esiin ja kerro minulle vain se?".

Jos sinulla on makroja, jotka on kirjattu Lotus 1-2-3: een, muista, että voit käyttää Consulting by -ohjelmaa makron muuntamiseen.

On joitain asioita, jotka Lotus 1-2-3 teki helposti, mutta joita ei ole saatavana Excelissä. Kaunis yksinkertaisuus / File Combine Add Entire Lotusissa korvataan 8 vaiheella Excelissä.

Tämän päivän kysymys putkesta rivien tulostuksen estämiseksi on toinen esimerkki, jossa Excel ei tarjoa vastaavaa ominaisuutta. Alla oleva LotusPrint-makro simuloi tätä ominaisuutta. Se on kamalasti tehotonta. Makro tutkii kaikki sarakkeen A aktiivisen alueen solut. Kun se löytää putken, piilottaa rivi. Sitten se tulostaa laskentataulukon ja palaa piilotettujen rivien piiloon.

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

Mielenkiintoisia artikkeleita...