Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
608to612
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

.Shapes(1).Width = .Range("IV1").Left = 76,5??

.Shapes(1).Width = .Range("IV1").Left = 76,5?
11.05.2005 16:49:03
Reinhard
Hallo Wissende,
mit diesem Code setze ich die Maus innerhalb des Tabellenblatts ausser Betrieb:

Sub MausinTabelleDeaktivieren()
With ActiveSheet
ActiveSheet.Unprotect Password:="xyz"
.Range("iv65536").CopyPicture Appearance:=xlScreen, Format:=xlPicture
.Pictures.Paste.Select
.Shapes(1).Top = 0
.Shapes(1).Left = 0
'.Shapes(1).Width = .range("IV1").Left + .Range("iv1").ColumnWidth
.Shapes(1).Width = .Range("IV1").Left
.Shapes(1).Height = .Rows(.UsedRange.Row + 1).Top
MsgBox .Shapes(1).Width
End With
ActiveSheet.Protect Password:="xyz", DrawingObjects:=True, Contents:=False, Scenarios:=False
End Sub

In der MsgBox wird aber für width nur 76,5 angezeigt, bzw auch in der Tabelle sicbar so, warum das denn? Seit ner dreiviertel Sunde hänge ich an dem width rum :-(((
Ich hab dann getestet und das Ergebnis dieses Codes entsprach meiner Logik

Sub hä()
MsgBox Range("IV1").Left
ActiveSheet.Shapes(1).Width = 10000
MsgBox ActiveSheet.Shapes(1).Width
End Sub

Range("IV1").Left ist 15300
und man kann width grosse Werte zuweisen, hier 10000 (okay daraus wird dann 9999 oder so, what shells.)
Ich weiss echt nicht mehr weiter:-(
Danke
Gruß
Reinhard
Ps: wie setze ich denn width auf die gesamte Breite der Tabelle,in meiner Lösung fehlt ja Spalte 256.
.Shapes(1).Width = .range("IV1").Left + .Range("iv1").ColumnWidth ist falsch weil columnwith ja anzahl Buchstaben sind undkeine Punkte.

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: .Shapes(1).Width = .Range("IV1").Left = 76,5?
11.05.2005 17:04:27
Bert
Hi,
.Shapes(1).Width = .Rows(1).Width
mfg Bert
width gelöst:-)) jetzt häng ich an height fest:((
11.05.2005 17:08:23
Reinhard
Hallo
ich habe das Seitenverhältnis nicht entsperrt, nach Einfügen von
.Shapes(1).LockAspectRatio = msoFalse
klappt es mit dem widht.:-)
Okay, schon das nächste Problem, mit height.
.Shapes(1).Height = .Rows(.UsedRange.Rows.Count + 1).Top
klappt nicht, bzw deckt nicht alles ab.
msgbox .UsedRange.Rows.Count + 1 ergibt 14 obwohl in Zeile 18 definitiv was drinsteht.
Wieso das denn nun?
Ich glaub heute ist nicht min Tag:-(
Gruß
Reinhard
anbei die seltsame Datei
11.05.2005 17:23:02
Reinhard
Hallo Wisende
danke sehr für das rows.width ich glaub ich mach das auch für weight, aber trotzdem wrum steht was in Zeile 18 und usedrnage,rows zählt nur bis 13?
https://www.herber.de/bbs/user/22456.xls
Gruß
Reinhard
Anzeige
AW: anbei die seltsame Datei
11.05.2005 17:30:44
Volker
Hallo Reinhard,
muß jetzt leider Feierabend machen, aber morgen gehts weiter. Versprochen.
Gruß
Volker
AW: anbei die seltsame Datei
11.05.2005 18:10:57
Bert
Hi,
dein UsedRange beginnt in Zeile 6 und endet in Zeile 18, alles klar?
mfg Bert
alles klar, danke dir schon wieder:-) o.w.T
11.05.2005 18:24:15
Reinhard
AW: .Shapes(1).Width = .Range("IV1").Left = 76,5?
11.05.2005 17:16:41
Volker
Hallo Reinhard,
auch wenn ich solche Geschichten noch nie gemacht hab, will ich's mal versuchen.
Man kann dabei nur lernen.
Was nicht ganz klar wird ist, ob dein Shape(1) jetzt auf die Breite von Spalte A bis IV gezogen wird und nur das zurücklesen nicht geht, oder beides nicht funzt.
Ich hab den Code ohne die Passwortaktionen ausprobiert und bei mit gehts problemlos.
Gruß
Volker
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige