Seite 1 von 1

Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Fr, 11. Mai 2018 9:19
von DerRolf
Guten Morgen.
Gibt es die Möglichkeit bei einer Excel Tabelle zu prüfen, ob Spalten ausgeblendet wurden?

Kann mann die oberste Zeile ( A B C D ... ) eine Excel Tabelle auslesen?

Wenn ich die Datei als "csv" speichere sind die ausgeblendeten Spalten wieder sichtbar.
Ich müsste es aber vorher wissen.

Jemand ne Idee?
Vielen Dank.
Gruß Rolf

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Fr, 11. Mai 2018 9:50
von AUGE_OHR
Frage : wie blendet man eine Spalte aus ?

... lass dabei den Macro Editor laufen und poste das Ergebnis

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Fr, 11. Mai 2018 10:33
von DerRolf
Danke für die schnelle Antwort.

OK. Hab ich.

Columns("F:H").Select
Selection.EntireColumn.Hidden = True
End Sub

Ich brauche aber die Info, ob in einer Tabelle ausgeblendete Spalten vorhanden sind.

Columns("A:Z".Select
IF Selection.EntireColumn.Hidden == True
Alarm
EndIf
Werde es später mal testen.

Gruß Rolf

PS: Wieso bekomme ich keine Nachricht, wenn jemand auf mein Post antwortet? Häckchen ist gesetzt.

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: So, 13. Mai 2018 15:53
von DerRolf
Jemand ne Idee?
Komme nicht wirklich weiter.

Gruß Rolf

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: So, 13. Mai 2018 16:09
von Martin Altmann
Warum änderst du die Markierung vor dem Speichern nicht auf die nur sichtbaren Zellen?
Hängt ein wenig von der Excelversion ab. In älteren Versionen musst du nach dem markieren den Befehl „Gehe zu - sichtbaren Zellen“ aufrufen, dann wird der markierte Bereich entsprechend angepasst.

Viele Grüße,
Martin

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Di, 15. Mai 2018 11:31
von DerRolf
Hallo Martin.

Danke für Deine Unterstützung.

Das Dateien werden von verschiedenen Stellen geliefert.
Es sind jede Menge Dateien, die ohne "Sichtung" weiterverarbeitet werden.
Da sind einige dabei, die die Spalten vorher ausblenden.
Das soll vor der Weiterverarbeitung geprüft werden und dokumentiert werden, wer das macht.

Es sind alles "XLSX" Dateien.

Gruß Rolf

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Di, 15. Mai 2018 18:27
von brandelh
die Frage ist was du möchtest, die Eigenschaft die oben stand kann man auch abfragen ob eine Spalte sichtbar ist oder nicht.
Evtl. ist es besser die libXL zu nutzen, da diese von Excel unabhängig ist.
Ob die diese Eigenschaft aber lesen kann weiß ich jetzt nicht - einfach in der Hilfe nachlesen (www.libxl.com)

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Di, 15. Mai 2018 19:59
von AUGE_OHR
wenn du keine Antwort bekommst liegt es vermutlich daran das keiner dein Problem hat/kennt.
es handelt sich ja um eine Excel Frage und nicht um eine Xbase++ Frage.

vielleicht geht es so :
1.) feststellen wie viele Column es gibt
2.) jede Column "selektieren" und sehen ob die hidden ist

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Mi, 16. Mai 2018 9:03
von DerRolf
Danke für die Hilfe.
Gruß Rolf

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Mi, 16. Mai 2018 10:37
von brandelh
Wenn du wissen willst, welche Spalte ausgeblendet ist, dann darfst du auch nur eine Spalte abfragen:

Code: Alles auswählen

for x := 1 to nAnzahlTestSpalten
   if oSheet:Column(cSpaToTxt(x)):Hidden = True  // Abfrage einer Spalteneigenschaft
      ...
   endif
next
Bei der Syntax bin ich mir nicht sicher und habe aktuell keine Zeit das zu Testen, aber in den Beispielen zu ActiveX und Excel gibt es Syntax Beispiele wie man Spalten abfragt nach deren Eigenschaften bzw. Methoden.

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Do, 17. Mai 2018 11:17
von DerRolf
brandelh hat geschrieben: Mi, 16. Mai 2018 10:37 Wenn du wissen willst, welche Spalte ausgeblendet ist, dann darfst du auch nur eine Spalte abfragen:

Code: Alles auswählen

for x := 1 to nAnzahlTestSpalten
   if oSheet:Column(cSpaToTxt(x)):Hidden = True  // Abfrage einer Spalteneigenschaft
      ...
   endif
next
Bei der Syntax bin ich mir nicht sicher und habe aktuell keine Zeit das zu Testen, aber in den Beispielen zu ActiveX und Excel gibt es Syntax Beispiele wie man Spalten abfragt nach deren Eigenschaften bzw. Methoden.
Hallo.
Danke für den Tip.
Hab es mal versucht. Scheitere aber an der Syntax für die Abfrage des Hidden Feldes...

oWorkBook:workSheets(1):usedRange:Select

// nun die "Länge" und "Breite" zählen
numRows := oWorkBook:workSheets(1):usedRange:Rows:Count
numColumns := oWorkBook:workSheets(1):usedRange:Columns:Count

FOR x := 1 TO numColumns

lVersteckt := oWorkBook:worksheet(1):column(x):Hidden // hier meckert er das ":Hidden" an mit "reserved Keyword"
IF lVersteckt
cVersteckt := "Versteckt"
Else
cVersteckt := "nicht versteckt"
EndIf

* MSGBOX("Row"+ STR(numRows ) )
MSGBOX("Col"+ STR(numColumns ) )
MSGBOX("Hidden"+ cHidden )

NEXT

Leider zählt die Funktion ":Column:Count" auch die ausgeblendeten Spalten.

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Do, 17. Mai 2018 13:57
von Wolfgang Ciriack
Probiers mal mit

Code: Alles auswählen

lVersteckt := oWorkBook:worksheet(1):column(x):GetProperty("Hidden")

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Do, 17. Mai 2018 14:53
von DerRolf
Wolfgang Ciriack hat geschrieben: Do, 17. Mai 2018 13:57 Probiers mal mit

Code: Alles auswählen

lVersteckt := oWorkBook:worksheet(1):column(x):GetProperty("Hidden")
Vielen Dank für die Idee.
Leider während der Laufzeit:#oError:description : Unbekannter Name.
Methode ist f r dieses Objekt unbekannt
oError:filename : NIL
oError:genCode : NIL
oError:operation : worksheet
oError:osCode : -2147352570
oError:severity : 2
oError:subCode : 6500

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Do, 17. Mai 2018 17:33
von AUGE_OHR
DerRolf hat geschrieben: Do, 17. Mai 2018 14:53
Wolfgang Ciriack hat geschrieben: Do, 17. Mai 2018 13:57 Probiers mal mit

Code: Alles auswählen

lVersteckt := oWorkBook:worksheet(1):column(x):GetProperty("Hidden")
Vielen Dank für die Idee.
Leider während der Laufzeit:#oError:description : Unbekannter Name.
versuche es mal mit columnS(x)

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Do, 17. Mai 2018 18:59
von brandelh
Schau mal hier ... MEHRZAHL Sheets(x)

Code: Alles auswählen

numRows := oWorkBook:workSheets(1):usedRange:Rows:Count
numColumns := oWorkBook:workSheets(1):usedRange:Columns:Count
Hier ist es EINZAHL und ein Array-Operator ... kann nicht gehen ;-)

Code: Alles auswählen

lVersteckt := oWorkBook:worksheet(1):column(x):Hidden // hier meckert er das ":Hidden" an mit "reserved Keyword"
ich meine bei den Beispielen, geht man so vor

Code: Alles auswählen

oSheet := oWorkBook:workSheets(1)
oSheet ... nun die Methoden oder Eigenschaften des WorkSheets.

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Verfasst: Do, 17. Mai 2018 22:24
von DerRolf
lVersteckt := oWorkBook:worksheets(1):columns(x):GetProperty("Hidden")

Das war die Lösung!

Nochmals herzlichen Dank an alle!!!! :blob8: =D> =D>

Gruß Rolf