billpancho
XLDnaute Nouveau
Bonjour,
Je cherche à créer des formes ayant des dimensions issues de textbox et donc de boites de dialogue
Jusqu'ici tout va bien
Le truc est que je souhaite placer mes formes sur mes feuilles mais que toutes les dimensions (formes largeur hauteur et cellule colonne et hauteur) soient comparables, proportionnelles...
J'ai donc utilisé application.centimetersto... pour créer mes formes
et pour obtenir une largeur de colonne en centimetre, j'ai utilisé le code:
	
	
	
	
	
		
Pour tester tout cela, j'ai voulu dire que la largeur de ma colonne était de 10
puis j'ai créer une forme qui était large de 10
le probleme est que ma forme est un peu plus grande que ma colonne
en terme de hauteur en revanche tout est parfait !
Ma question :
La largeur correcte est elle celle de la forme ou celle de la colonne ?
Comment faire pour que mes deux données soient identiques à l'écran ?
	
		
			
		
		
	
				
			Je cherche à créer des formes ayant des dimensions issues de textbox et donc de boites de dialogue
Jusqu'ici tout va bien
Le truc est que je souhaite placer mes formes sur mes feuilles mais que toutes les dimensions (formes largeur hauteur et cellule colonne et hauteur) soient comparables, proportionnelles...
J'ai donc utilisé application.centimetersto... pour créer mes formes
et pour obtenir une largeur de colonne en centimetre, j'ai utilisé le code:
		Code:
	
	
	Application.ScreenUpdating = False
 
  Dim cm As Integer, points As Integer, savewidth As Integer
  Dim count As Integer
  
 
 cm = CInt(TextBox11) / 10
 
Sheets("Plan").Select
Range("C1").Select
  
  If cm = False Then Exit Sub
  points = Application.CentimetersToPoints(cm)
  savewidth = ActiveCell.ColumnWidth
  ActiveCell.ColumnWidth = 255
    If points > ActiveCell.Width Then
      MsgBox "la largeur de" & cm & "est trop large" & Chr(10) & _
      "la valeur maxi est de " & _
      Format(ActiveCell.Width / 28.3464566929134, _
      "0.00"), vbOKOnly + vbExclamation, "largeur non valable"
      ActiveCell.ColumnWidth = savewidth
      Exit Sub
    End If
  lowerwidth = 0
  upwidth = 255
  ActiveCell.ColumnWidth = 127.5
  curwidth = ActiveCell.ColumnWidth
  count = 0
  While (ActiveCell.Width <> points) And (count < 20)
    If ActiveCell.Width < points Then
      lowerwidth = curwidth
      Selection.ColumnWidth = (curwidth + upwidth) / 2
    Else
      upwidth = curwidth
      Selection.ColumnWidth = (curwidth + lowerwidth) / 2
    End If
  curwidth = ActiveCell.ColumnWidth
  count = count + 1
  Wend
	Pour tester tout cela, j'ai voulu dire que la largeur de ma colonne était de 10
puis j'ai créer une forme qui était large de 10
le probleme est que ma forme est un peu plus grande que ma colonne
en terme de hauteur en revanche tout est parfait !
Ma question :
La largeur correcte est elle celle de la forme ou celle de la colonne ?
Comment faire pour que mes deux données soient identiques à l'écran ?