Excel VBA Oszlopok elrejtése
A rejtőzés egyszerű dolog, de itt meg kell értenie a fogalmat. Az oszlop elrejtéséhez a VBA használatával meg kell határoznunk, hogy melyik oszlopot kell elrejteni. Az elrejtendő oszlop megadásához a RANGE objektumot kell használnunk.
Tartomány ("A: A")
Ezután a „Teljes oszlop” tulajdonságot kell használnunk.
Tartomány ("A: A"). EntireColumn
A teljes oszlop tulajdonságban a „Rejtett” tulajdonságot kell használnunk.
Tartomány ("A: A"). EntireColumn.Hidden
Ezután végre a Rejtett tulajdonságot IGAZra kell állítanunk.
Tartomány ("A: A"). EntireColumn.Hidden = IGAZ
Ez elrejti az A oszlopot.
Hogyan lehet elrejteni az oszlopokat a VBA-ban?
Az oszlopokat többféleképpen is elrejthetjük. Elrejthetünk egy oszlopot egy Range objektum használatával a CELLS tulajdonság használatával. Az általunk használt módszer alapján fel kell állítanunk a VBA kódunkat.
1. példa - Elrejtés a Range Object használatával
Ha el akar rejteni egy adott oszlopot, akkor adja meg az oszlopot a RANGE objektumon belül. Nézze meg az alábbi adatokat.

Most a teljes A oszlopot elrejtjük a következő kód segítségével.
Kód:
Sub Range_Hide () Tartomány ("A: A"). EntireColumn.Hidden = Igaz vég alrész

Tehát amikor futtatjuk a kódot, a következő eredményt kapjuk.

2. példa - Elrejtés az Oszlopok tulajdonság használatával
Ha el akarja rejteni az oszlopot az Oszlopok tulajdonság segítségével, akkor az alábbi kód az Ön számára készült.
Kód:
Sub Range_Hide () oszlopok ("B"). Rejtett = True End Sub

Ez elrejti a B oszlopot. Itt kell gondolkodnia, hol van az Teljes oszlop tulajdonság. Oszlopok tulajdonság használatakor nem szükséges használni a Teljes oszlop tulajdonságot.
Továbbra is használhatjuk a Teljes oszlop tulajdonságot, de nem feltétlenül szükséges. Ennek kódja pedig alább látható.
Kód:
Aloszlopok_Rajzolás () Oszlopok ("B"). EntireColumn.Hidden = Igaz végső alrész

Ennek is jól kell működnie.
Használhatjuk az oszlop számát is ábécés hivatkozás helyett. Ennek kódja pedig alább található.
Kód:
Aloszlopok_Rajzolás () Oszlopok (4) .EntireColumn.Hidden = Igaz végső alrész

Ez elrejti a D oszlopot.

3. példa - Több oszlop elrejtése
Egyszerre több oszlopot is elrejthetünk. Meg kell említenünk az első és az utolsó oszlopot, hogy az oszlopok között is rejtve legyenek. Az 1. példával megegyező adatokhoz használja az alábbi kódot több oszlop elrejtéséhez.
Kód:
Aloszlopok_Rajzolás () Tartomány ("A: C"). EntireColumn.Hidden = Igaz végső alrész

Ez elrejti az A – C oszlopot.
A következő kódot használhatjuk több oszlop elrejtésére is az Excel VBA-ban.
Kód:
Sub Multi_Columns_Hide () oszlopok ("A: C"). EntireColumn.Hidden = True End Sub

A fenti módszerek elrejtik az első három oszlopot, azaz A, B és C

4. példa - Oszlopok elrejtése egyetlen cellával
Oszlopot is elrejthetünk egyetlen cellahivatkozás alapján. Az oszlop elrejtéséhez nem kell megadnunk a teljes oszlop hivatkozást. Csak egyetlen cellahivatkozással el kell rejtenünk egy oszlopot.
Kód:
Sub Single_Hide () tartomány ("A5"). EntireColumn.Hidden = Igaz vég alrész

Ez elrejti a teljes A oszlopot.

5. példa - Minden alternatív oszlop elrejtése
Tegyük fel, hogy vannak adatai, valami hasonló az alábbi képhez.

We need to hide every alternative column, which is blank. We need to use loops; the below code will do the job for us.
Code:
Sub AlternativeColumn_Hide() Dim k As Integer For k = 1 To 7 Cells(1, k + 1).EntireColumn.Hidden = True k = k + 1 Next k End Sub

This will hide every alternate column.

Example #6 - Hide Every Empty Column
In the previous example, every other alternative column was blank; we have hidden easily. But look at the below data.

Here empty columns pattern is not standard. In these cases, the below code will hide all the empty columns. It doesn’t matter what the pattern is.
Code:
Sub Column_Hide1() Dim k As Integer For k = 1 To 11 If Cells(1, k).Value = "" Then Columns(k).Hidden = True End If Next k End Sub

When you run the code, you will get the result as follows.

Example #7 - Hide Columns Based On Cell Value
Most meglátjuk, hogyan lehet elrejteni az oszlopokat a cella értéke alapján. Nézze meg például az alábbi adatokat.

Itt akarom elrejteni az összes oszlopot, ha a címsor „Nem”. Az alábbi kód megteszi helyettem.
Kód:
Aloszlop_Hide_Cell_Value () Dim k mint egész szám k = 1-től 7-ig, ha cellák (1, k). Érték = "Nem", akkor oszlopok (k). Rejtett = True End, ha következő k End Sub

Amikor futtatja a kódot, az alábbiak szerint kapja meg az eredményt.
