Microsoft Excel

Herbers Excel/VBA-Archiv

alle gezeichneten Linien ein- und ausblenden | Herbers Excel-Forum


Betrifft: alle gezeichneten Linien ein- und ausblenden von: Claudia
Geschrieben am: 06.02.2012 17:29:09

Hallo guten Abend alle zusammen,

kann mir jemand mit einem kleinen Makro helfen welches folgendes kann:

Ich habe in diversen Tabellenblätter einer sehr großen und umfangreichen Datei eingezeichnete Linien aller Art. Nun möchte ich bei Weitergabe an div. Kollegen das ich
- alle Linien ausblenden kann
und wenn ich die Datei bearbeitet zurückbekomme
- alle Linien wieder einblenden kann
In de Blättern befinden sich auch Balken, diese dürfen nicht ausgeblendet werden.
Ich schaffe das leider nicht und im Archiv finde ich nichts dazu.
Wäre sehr toll wenn Ihr mir helfen könnt.
Danke und Gruß
Claudia

  

Betrifft: Welche 'Linien' sind das ? von: NoNet
Geschrieben am: 06.02.2012 17:33:16

Hallo Claudia,

was meinst Du genau mit "Linien" ?

- Gitternetzlinien (Zellenraster im Hintergrund)
- Rahmenlinien (Zellformatierung)
- Autoformen (Linien, Pfeile, Formen)
- Linien-Diagramm
- Sonstige Linien ?

Und was sind dann die "Balken" ?
- Balken-Diagramm
- Autoformen

Danke und Gruß, NoNet


  

Betrifft: AW: Welche 'Linien' sind das ? von: Claudia
Geschrieben am: 06.02.2012 17:42:42

Hallo NoNet,

bei beidem (Linien und Balken) handelt es sich um Autoformen.

Hoffe Du kannst etwas damit anfangen.
Danke und Gruß
Claudia


  

Betrifft: Autoform-Linien per VBA ausblenden von: NoNet
Geschrieben am: 06.02.2012 18:11:45

Hallo Claudia,

hier der Code zum Ausblenden der Autoformen-Linien und zum Einblenden ALLER Grafik-Objekte (Shapes) :

Sub Autoformen_Linien_Ausblenden()
    Dim sh As Shape
    
    For Each sh In ActiveSheet.Shapes
        sh.Visible = sh.Type = 1 'Type 1 = LINIEN
    Next
End Sub

Sub Alle_Autoformen_Einblenden()
    Dim sh As Shape
    
    For Each sh In ActiveSheet.Shapes
        sh.Visible = True
    Next
End Sub
Gruß, NoNet


  

Betrifft: AW: alle gezeichneten Linien ein- und ausblenden von: Josef Ehrensberger
Geschrieben am: 06.02.2012 18:32:29


Hallo Claudi,

Sub hide_show_Lines()
  Dim objSh As Worksheet
  Dim objShp As Shape
  
  For Each objSh In ThisWorkbook.Worksheets
    For Each objShp In objSh.Shapes
      If objShp.ShapeStyle = 10002 Then objShp.Visible = Not objShp.Visible
    Next
  Next
  
End Sub






« Gruß Sepp »



  

Betrifft: AW: alle gezeichneten Linien ein- und ausblenden von: Claudia
Geschrieben am: 06.02.2012 19:52:54

Hallo Sepp, hallo NoNet,
funktioniert leider nicht. Das Makro von Sepp sagt "Objekt unterstützt diese Aktion nicht". Das Makro von NoNet blendet leider gar nicht aus.

Ich habe aber soeben gesehen, wenn man eine der vielen Linien anklickt, erscheint im Namensfeld folgender Name: C-B00100-L00100L Die anderen gezeichneten Linien haben ebenfalls so ähnlich klingende Namen.

Ich glaube ich habe unrecht mit meiner Aussage der Autoformen.

Da ich die Datei auch immer von einer anderen Abteilung erhalte habe ich wohl etwas falsch verstanden. Die Linien werden automatisch zwischen den Balken gezeichnet. Auch die Balken haben Namen: z.B. B00100

Hilft Euch das weiter um mir zu helfen.

Danke und Gruß Claudia


  

Betrifft: AW: alle gezeichneten Linien ein- und ausblenden von: Josef Ehrensberger
Geschrieben am: 06.02.2012 19:57:39


Hallo Claudia,

lade doch eine solche Datei hoch.




« Gruß Sepp »



  

Betrifft: soeben hochgeladen o.T. von: Claudia
Geschrieben am: 06.02.2012 20:01:26




  

Betrifft: AW: alle gezeichneten Linien ein- und ausblenden von: Claudia
Geschrieben am: 06.02.2012 20:00:46

Hallo Ihr lieben Helfer,

habe mal einen Teil der Datei (sehr stark verkürzt) hochgeladen. Ich hoffe das hilft Euch bei der Lösungsfindung.

https://www.herber.de/bbs/user/78767.xls

Frage deshalb noch einmal auf offen gestellt.

Dank und Gruß Claudia


  

Betrifft: AW: alle gezeichneten Linien ein- und ausblenden von: Josef Ehrensberger
Geschrieben am: 06.02.2012 20:09:45


Hallo Claudia,

die Shapes werden sicher von einem Programm eingefügt.

Probier mal.

Sub hide_show_Lines()
  Dim objSh As Worksheet
  Dim objShp As Shape
  
  For Each objSh In ThisWorkbook.Worksheets
    For Each objShp In objSh.Shapes
      If objShp.Type = 1 Then
        If objShp.Name Like "P*" Or objShp.Name Like "C*" Or _
          objShp.Name Like "L*" Then objShp.Visible = Not objShp.Visible
      End If
    Next
  Next
  
End Sub






« Gruß Sepp »



  

Betrifft: AW: alle gezeichneten Linien ein- und ausblenden von: Claudia
Geschrieben am: 06.02.2012 20:19:31

Hallo Sepp,

funzt suuuuper. Und wenn Du mir jetzt noch verrätst wie ich Sie (die Linien) wieder "sichtbar" machen kann dann bin ich echt glücklich und kann endlich in die Scheißkälte raus ( haben gerade minus 22 Grad) und Feierabend machen. :-)))
Gruß Claudia


  

Betrifft: Makro nochmals laufen lassen.. oT von: robert
Geschrieben am: 06.02.2012 20:41:02




  

Betrifft: Danke an alle funzt schönen Abend o.T. von: Claudia
Geschrieben am: 06.02.2012 20:49:46




Beiträge aus den Excel-Beispielen zum Thema "alle gezeichneten Linien ein- und ausblenden"