Coller textbox transposé décalé

Bonjour à tous,

Je cherche à coller les valeurs des textbox (les textbox sont renommés par colonne) en transposé décalé.

Je dois passer par quel code?

Merci de votre aide.

Cordialement.

Bonsoir,

Je ne vois pas de transposition, et un décalage se définit par rapport à quelque chose... !

Mais enfin pour produire ta configuration :

Private Sub UserForm_Initialize()
    Dim tbl, i%
    tbl = Worksheets("Feuil1").Range("B1:M2").Value
    For i = 1 To 12
        Controls(tbl(1, i)).Value = tbl(2, i)
    Next i
End Sub

Cordialement.

Bonjour,

Avec le code transmis je récupère le données de cellules de la feuille dans le useform.

Ce que je souhaite c'est le contraire, rentrer des données dans le useform et coller les données dans le tableau.

Si on imagine les colonnes du useform A B C D... avec les textbox respectives

Les données doivent se coller de la façon suivante

a1, b1, c1,D1.... décalage de deux cellules puis a2,b2,c2, d2.... décalage de deux celulles puis a3,b3,c3,d3 décalage ....

J'avais oublié dans mon fichier de base les celulles qui ne doivent pas être remplies.

Ci_joint nouveau fichier.

Cordialement.

Pour inverser, dans la solution sans cellules vides que j'ai donnée, on inverse aussi dans la macro...

Private Sub CommandButton1_Click()
    Dim tbl, i%
    tbl = Worksheets("Feuil1").Range("B1:M2").Value
    For i = 1 To 12
        tbl(2, i) = Controls(tbl(1, i)).Value
    Next i
    Worksheets("Feuil1").Range("B1:M2").Value = tbl
End Sub

Pour tes décalages...

Private Sub CommandButton1_Click()
    Dim tbl, i%
    tbl = Worksheets("Feuil1").Range("B1:Q2").Value
    For i = 1 To UBound(tbl, 2)
        If tbl(1, i) <> "" Then tbl(2, i) = Controls(tbl(1, i)).Value
    Next i
    Worksheets("Feuil1").Range("B1:Q2").Value = tbl
End Sub

En mettant UBound(tbl, 2) au lieu de 16, j'ai amorcé une généralisation...

Pour généraliser complètement, il faut rendre aussi la plage variable en cherchant la dernière colonne utilisée en ligne 1...

En réfléchissant un peu sur la signification du code fourni et les méthodes utilisées, tu aurais dû pouvoir extrapoler et adapter...

Bonjour,

Désolé, il est long pour moi de comprendre les codes même avec l'aide...... j'apprends petit à petit

cela marche mais je dois mal m'expliquer,

Dans votre solution, les valeurs des textbox se collent par rapport au nom des textbox.

J'ai mis le nom des textbox sur le fichier juste pour la correspondance aux cases choisies pour coller les valeurs. Elles ne seront plus présentes sur le fichier final.

Je cherche vraiment à coller les valeurs et la prise en compte de décalage dans la formule :

a1, b1, c1,D1.... décalage de deux cellules puis a2,b2,c2, d2.... décalage de deux celulles puis a3,b3,c3,d3 décalage ....

Si ce n’est toujours pas clair dites le moi. A force on va y arriver

Sans changer de cheval ! La méthode étant tout à fait pratique... un algorithme adéquat suffira...

Private Sub CommandButton1_Click()
    Dim tbl(), i%, j%
    ReDim tbl(1 To 16, 1 To 2)
    For i = 1 To 4
        For j = 1 To 3
            tbl((j - 1) * 6 + i, 2) = Chr(96 + i) & j
        Next j
    Next i
    For i = 1 To 16
        If tbl(i, 2) <> "" Then tbl(i, 1) = Controls(tbl(i, 2)).Value
    Next i
    ReDim Preserve tbl(1 To 16, 1 To 1)
    Worksheets("Feuil1").Range("B2:Q2").Value = WorksheetFunction.Transpose(tbl)
End Sub

Maintenant, s'il te prend la fantaisie de modifier les noms des TexBox, tu feras l'adaptation toi-même !

D'ailleurs, les nommer autrement te permettrait de simplifier l'algorithme !

Merci pour le code ça fonctionne.

Je ferme ce sujet car il est en double. J'ai des parasites de lignes de code dans mon fichier global je dois faire pas à pas

(1+RACINE(5))/2 je crois. Cela me rappelle lorsque je m'en suis servi pour répartir des carreaux déco sur un carrelage mural de salle de bains... Losque j'ai fourni le schéma à l'artisan, il a fortement pensé : "il est fada...", mais il a tout de même suivi le schéma et quand il a vu le résultat à la fin, il a pris des notes pour pouvoir le refaire !

On fait beaucoup de chose avec les racines et de très jolies choses d'ailleurs.

Le mieux est d'utiliser le nombre d'or, formule la plus magique à mes yeux.

C'est bien ce dont je parlais ! La célèbre suite de Fibonacci...

Si j'arrive à continuer mon fichier peu être vais je réussir à associer une partie des leurs formules à mes tuyaux....

c'est la clef en tout cas

Rechercher des sujets similaires à "coller textbox transpose decale"