web-dev-qa-db-fra.com

Comment faire des cellules des carrés parfaits dans Excel?

Dans Microsoft Excel,

alt text

Je veux faire la hauteur des trois premières lignes et des quatre premières colonnes (12 cellules dans le coin supérieur gauche) de telle sorte que ces cellules soient des carrés. Comment cela peut-il être fait?


Étonnamment, Excel dit:

Row height: 15
Column width: 8.43

Donc, ce ne sont pas sur la même échelle.

Faire les deux 8.43 me donne ceci:

alt text

Maintenant, que dois-je faire?

51
Lazer

Une autre façon ... changez votre vue en Mise en page. Cela modifie l'échelle de la grille en pouces, puis vous pouvez définir spécifiquement la hauteur et la largeur sur la même valeur (par exemple 25 pouces). La mise en page de l'OMI est la meilleure vue standard pour travailler sur l'apparence de la feuille de calcul.

Voici un exemple avec les dimensions réelles des deux vues:

Square Cells

47
dav

Sélectionnez tout (ou les lignes/colonnes dont vous avez besoin), puis faites glisser pour redimensionner à la taille souhaitée.

  1. Faites glisser le bord d'un en-tête de colonne pour redimensionner la largeur de la colonne. Une info-bulle apparaît avec le nombre exact de pixels.
  2. Rappelez-vous la valeur de pixel!
  3. Faites glisser le bord d'un en-tête de ligne pour redimensionner la hauteur de la ligne, cela fonctionne de la même manière.
  4. Faites glisser vers la même valeur de pixel.

Terminé!

14

La largeur de colonne d'Excel est mesurée par le nombre de zéros (0) pouvant tenir dans la cellule au style Normal. Pour convertir en points (comment la hauteur de ligne est mesurée), voir

http://www.dailydoseofexcel.com/archives/2004/06/01/column-widths-in-points/

Si vous n'avez pas besoin d'être exact, surveillez-le. Si vous avez vraiment besoin d’être plus près que l’œil, placez un carré dans la barre d’outils Dessin de votre feuille et redimensionnez-le. Si vous le voulez 10 x 10, utilisez un code comme celui-ci:

sheet1.Shapes(1).Height = 10
sheet1.Shapes(1).Width = 10
sheet1.Shapes(1).Top = sheet1.Shapes(1).TopLeftCell.Top
sheet1.Shapes(1).Left = sheet1.Shapes(1).TopLeftCell.Left

Ensuite, vous pouvez redimensionner manuellement votre ligne et votre colonne en fonction du carré et lire la hauteur et la largeur de colonne.

8
dkusleika

VBA semble un peu exagéré pour un résultat aussi simple. Si vous cliquez et maintenez enfoncé lorsque vous faites glisser pour modifier la taille de la ligne/col, la taille en pixels est affichée entre parenthèses. Ces unités ne sont pas mises à l'échelle. Par conséquent, si vous définissez la taille des lignes et des colonnes sur des pixels égaux, elles seront carrées. Bien sûr, il s’agit d’un processus manuel .. mais vous pouvez trouver les tailles équivalentes, puis sélectionner une plage de lignes/colonnes et définir toutes leurs tailles en même temps.

5
Nick

Le code suivant a fonctionné pour moi

Sub Grid_Squares()
    With Cells(1, 1)
        Cells.RowHeight = .Width
        Cells.ColumnWidth = .ColumnWidth
    End With
End Sub

Résultat:

 Result

2
Amit Panasara

Voici une solution VBA.

Private Sub MakeSquareCells()

'//  Create graph paper in Excel see    http://www.erlandsendata.no/english/index.php?d=envbawssetrowcol  if you want cm or inches


    Set Cursheet = ActiveSheet

    'don't drive the person crazy watching you work
    UpdateScreen = Application.ScreenUpdating
    Application.ScreenUpdating = False
    With wksToHaveSquareCells
        .Columns.ColumnWidth = 5 '// minimum 2, max 400 ; above 7 --> zoom doesn't work Nice
        .Rows.EntireRow.RowHeight = .Cells(1).Width
        '// ActiveWindow.Zoom = true
    End With

    Application.ScreenUpdating = UpdateScreen
    Cursheet.Activate           '// Reactivate sheet that has been active at entrance of this subroutine

End Sub
2
JackRnl

En fait, j'ai eu le même problème dans le passé. Ce qui fonctionne le mieux pour moi est le code VBA suivant. J'ai trouvé la relation linéaire par essais et erreurs.

Le code fonctionne pour les cellules individuelles, mais aussi pour une sélection. Dans ce dernier cas, les carrés sont basés sur la largeur ou la hauteur totale de la sélection.

Sub MakeCellSquareByColumn()
    Selection.RowHeight = Selection.Width / Selection.Columns.Count
    Selection.ColumnWidth = (((Selection.Width / Selection.Columns.Count) / 0.75 - 5) / 7)
End Sub

Sub MakeCellSquareByRow()
    Selection.ColumnWidth = (((Selection.Height / Selection.Rows.Count) / 0.75 - 5) / 7)
    Selection.RowHeight = Selection.Height / Selection.Rows.Count
End Sub

Vous pouvez mettre ces macros dans un module et leur attribuer des boutons dans la barre d'outils à accès rapide.

Notez que les carrés disparaissent (en modifiant la largeur de la colonne) lorsque vous modifiez le type ou la taille de la police. Cela est dû à la manière dont Excel calcule la largeur de la colonne. Voir: https://support.Microsoft.com/en-us/help/214123/description-of-how-column-widths-are-détermin-in-Excel

2
user609057

Si vous souhaitez le faire pour la totalité de la feuille, vous pouvez utiliser cette astuce - qui peut néanmoins être utile: cochez la case située à gauche de l'en-tête de colonne A pour sélectionner toutes les cellules; cliquez sur l'un des séparateurs d'en-tête de colonne et faites-le glisser jusqu'à la taille souhaitée, en notant le nombre de pixels pour la largeur de la cellule résultante (j'utilise Excel 2007, ce qui montre cela); Faites la même chose pour l’un des diviseurs d’étiquette de ligne, en l’adaptant à la largeur de la colonne en pixels. Cela devrait rendre toutes les cellules dans les zones de la feuille. Ce qui, bien sûr, n’est pas ce que vous avez demandé, mais j’avais espéré que cette astuce fonctionnerait avec un sous-ensemble de cellules. Malheureusement ce n'est pas le cas.

2
boot13

Vous devez savoir que ce qui est mathématiquement un carré et ce qui est visuellement un carré sont différents. Tous les moniteurs ne sont pas fabriqués de la même manière. En règle générale, les pixels sont plus larges que grands.

Regardez l'image suivante:

enter image description here

Chaque sous-pixel rouge, vert et bleu constitue le pixel entier. Comme vous pouvez le constater, la combinaison des 3 est plus large que la hauteur de 1 sous pixel. Dans la plupart des cas, la différence est subtile et la plupart des gens pourraient ne pas s'en rendre compte. Cependant, dans certains cas, les gens le font.

2
Keltari

J'ai déterminé qu'un carré peut être créé avec un rapport de 7,25 de hauteur de ligne pour chaque point de largeur d'une colonne.

2
user467579

Tout d'abord, sélectionnez les cellules que vous souhaitez redimensionner. Ensuite, sur l'onglet Home, allez dans la case Cells et cliquez sur l'option Format. Ici, vous pouvez modifier le Row Height et le Column Width des cellules sélectionnées comme vous le souhaitez.

1

Je voulais créer une grille carrée parfaite pour un projet de couture et je continuais à recevoir toutes sortes de réponses étranges à cette question. J'ai donc décidé de jouer avec elle-même pour résoudre ce problème. J'ai découvert qu'il est impossible d'obtenir un carré parfait, mais je me suis approché le plus près possible, juste un peu.

  1. Mettez en surbrillance les carrés que vous souhaitez formater.
  2. Allez dans l'onglet Format.
  3. Formater la largeur de la colonne à 12.43
  4. Formatez ensuite la hauteur de cellule à 75,00.

En utilisant une règle, j’ai trouvé que j’étais juste une fraction de 7 à 10 pouces de longueur. J'espère que cela t'aides.

1
Carol

J'utilise un rapport de 5-1/3, hauteur de ligne par largeur de colonne.

Par exemple, définissez une ligne d'une hauteur de 53,33 et d'une largeur de colonne de 10, ou 106,66 et 20, respectivement, et vous serez suffisamment près pour que le gouvernement travaille.

1
Jimbo

Excel 2010 Ajuster en mode Mise en page, puis revenir en mode Normal ne fonctionne pas. J'ai pu valider en utilisant les outils de dessin et en faisant un carré parfait dans la vue normale. C'est la méthode la plus simple pour créer des carrés de toute taille.

Largeur de colonne = 2.71 Hauteur de ligne = 18.

0
Rich Morgan

Cela fait très bien l'affaire en utilisant VBA. Définissez une rowHeight uniforme, puis utilisez la propriété Width (renvoie la taille de la colonne en points) et divisez-la par RowHeight afin d'obtenir un rapport hauteur/largeur sans unité. Faites la nouvelle ColumnWidth fois la ColumnWidth originale pour que tout soit carré.

Sub makeSquares() 
Cells.RowHeight = 20
With Cells(1, 1)
W = .ColumnWidth
HWratio = .RowHeight / .Width
Cells.ColumnWidth = W * HWratio
End With
End Sub
0
Max

Si vous souhaitez que les lignes et les colonnes aient une apparence carrée, sélectionnez toutes les cellules que vous souhaitez créer, puis réglez la hauteur de la ligne sur 28,8 ET modifiez la largeur de la colonne sur 4,56.

0
Krishna Patel

Cliquez et faites glisser sur la bordure entre les lignes. Pour redimensionner plusieurs fois une colonne/ligne à la fois, sélectionnez-les toutes, faites un clic droit et cliquez sur "Hauteur de ligne ..." et réglez-le sur la même hauteur que les lignes sont larges.

0
Stacey Hanson
  • Sélectionnez les colonnes (cliquez sur la colonne A, puis maintenez la touche Maj enfoncée et cliquez sur l'autre extrémité)

  • Faites un clic droit sur l'une des colonnes, cliquez sur Largeur de colonne puis entrez une nouvelle valeur.

  • Vous pouvez faire la même chose avec une ligne, puis cliquez sur Row Height pour obtenir la hauteur d'une ligne.

0
Tom Wijsman
  • Sélectionner tout - Ctrl + A
  • Faites un clic droit sur un en-tête de colonne et sélectionnez Largeur de colonne
  • Entrez la valeur = 4> Ok
  • Là, vous verrez toutes les cellules dans une forme carrée parfaite.
0
Mohammed Shahid