colega o que você deve fazer é simples
primeiro decubra o resto de uma divisão da largura da folha maior para largura da folha menor
depois faça o mesmo com a altura e pronto
ex:
a função Mod do visual basic retorna esta diferença
ex:
Dif = 9 Mod 3 'diferença é Igual a (0)
Dif = 10 Mod 3 'a diferença será (1)
então baseado nos seus exemplos você pode fazer da seguinte maneira
Suponha você queira saber quantas partes de 10 x 10 cabem em 21 x 28 cm
você poderia fazer desta forma
Dim DifLarg As Integer
Dim DifAlt As Integer
Dim Largura As Integer
Dim Altura As Integer
DifLarg = 21 Mod 10 ' Difrença é 1
DifAlt = 28 Mod 10 ' Direrença é 8
Largura = (21 - DifLarg) / 10 ' O cálculo seria (21 - 1) / 10 = 2
Altura = (28 - DifAltura) /10 ' este seria (28 - 8) / 10 = 2
'Então dentro da folha cabeiram 4 quatro folhas de 10 x 10, ou seja 2x2=4
'desta forma conseguimos chegar a quantidade de quadrados que cabem em uma folha
'Agora basta determinara margem e posição destas folhas dentro da folha maior.
'para esta margem basta você somar a quantidade de folhas por largura e por altura,
'subtrair da folha maior e dividir por 2, parece complicado não é ma vamos a explicação
'Você sabe que em 21 cm cabem 2 folhas de 10 cm e ainda sobram um centimetro
'Então a formula é a seguinte (10 x 2= 20), e (21 - 20 = 1)
'pegue este 1 e divida pro 2, o resultato será de 0,5
' você terá uma margem de 0,5 cm ou seja em código Left = 0.5
' na altura serão (10 x 2 = 20), e (28 - 20 = 8) , (8 / 2 = 4)
' teremos uma marge na altura de 4 cm ou em código Top = 4
'vamos ao restante do código
'você pode usar um picturebox com shapes dentro e criar estes shapes de forma dinamica
'mas no exemplo abaixo coloque quatro shapes dentro de um picture box com as dimensões
'corretas.
Shape1.Width = Largura
Shape1.Height = Altura
Shape1.Left = DifLarg /2
Shape1.Top = DifAlt / 2
Shape2.Width = Largura
Shape2.Height= Altura
Shape2.Left = (DifLarg / 2) + Largura
Shape2.Top= DifAlt / 2
Shape3.Width = Largura
Shape3.Height= Altura
Shape3.Left = DifLarg / 2
Shape3.Top = (DifAlt / 2) + Altura
Shape4.Width = Largura
Shape4.Height= Altura
Shape4.Left = (DifLarg / 2) + Largura
Shape4.Top = (DifAlt / 2) + Altura
espro ter sido claro nas explicações, bom agora sóresta você pesquisar como criar objetos em tempo de execusão, criar um laço para a s coordenadas e pronto.
até