Excel Tabelle auf ausgeblendete Spalten prüfen

Zugriff, Engines, Konvertierung. Von ADS über DBF bis zu SQL.

Moderator: Moderatoren

Antworten
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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
VG Rolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag von AUGE_OHR »

Frage : wie blendet man eine Spalte aus ?

... lass dabei den Macro Editor laufen und poste das Ergebnis
gruss by OHR
Jimmy
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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.
VG Rolf
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag von DerRolf »

Jemand ne Idee?
Komme nicht wirklich weiter.

Gruß Rolf
VG Rolf
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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
VG Rolf
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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)
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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
gruss by OHR
Jimmy
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag von DerRolf »

Danke für die Hilfe.
Gruß Rolf
VG Rolf
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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.
Gruß
Hubert
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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.
VG Rolf
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag von Wolfgang Ciriack »

Probiers mal mit

Code: Alles auswählen

lVersteckt := oWorkBook:worksheet(1):column(x):GetProperty("Hidden")
Viele Grüße
Wolfgang
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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
VG Rolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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)
gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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.
Gruß
Hubert
DerRolf
UDF-Programmierer
UDF-Programmierer
Beiträge: 76
Registriert: Mi, 10. Sep 2014 9:53
Hat sich bedankt: 3 Mal

Re: Excel Tabelle auf ausgeblendete Spalten prüfen

Beitrag 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
VG Rolf
Antworten