Ajouter des cellules vides

hunter -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
d'abord je vous dit que je suis un débutant sur excel
voici mon problème:
j'ai un grand nombre de valeur sur la même ligne et je veux séparer chaque deux valeurs par 15 cellules vides
NB: le faite d'ajouter 15 cellules et refaire ce boulot est vraiment épuisable, peut être il y a une fonction pour la résolution de ce prob
merci d'avance ;

6 réponses

Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Bonsoir,

Oui bien sur, Excel sait tout faire ou presque, mais cette demande ne peut se traiter que par VBA si tu as quelques notions, mais tu as déjà annoncé que tu débutais, ou manuellement comme tu fais certainement
0
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
Une fonction, non ; mais une procédure, oui :
Tu saisis "X" en A1 et B1
Tu saisis la plage A1:Q1
Tu cliques sur la poignée (en bas à droite de Q1) et en laissant le bouton enfoncé, tu tires vers la droite le plus possible ; tu obtiens une répétition de 2 cellules avec "X" et de 15 cellules vides.
Tu n'as plus qu'à remplacer les "X" par les vraies données ...
0
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
Si tu nous as posé la question après avoir déjà rempli des dizaines de cellules à la suite avec des valeurs, autre procédure :
Les 2 premières valeurs étant en A1 et B1, et les 2 suivantes en C1:D1,
sélectionner les colonnes C à Q et faire Clic-droit / Insertion
Faire immédiatement Copier (ou ctrl+C), cliquer en T1 et sélectionner "Insérer les cellules copiées"
Recommencer en copiant T:AH et en l'insérant en AK1, etc.
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

Un exemple de macro
Sub InsererLignes()
Dim Ligne As Long
Dim Col As Integer
Col = 3
Ligne = CInt(InputBox("Indiquez le numéro de ligne à traiter."))
Do While Col <= Cells(Ligne, Columns.Count).End(xlToLeft).Column
Cells(Ligne, Col).Resize(, 15).Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Col = Col + 17
Loop
End Sub


A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour
une petite formule juste pour faire joujou:
si vos données sont en ligne 1 à partir de A1 jusqu'à A150
en ligne 2 en A2, reporter A1 ou =A1
en B2, ou sur une lignevide,à tirer sur la longueur voulue
=SI(MOD(COLONNE();17)=0;INDEX($A$1:$A$150;NB.SI($A$2:A2;"><")+1);"")
les valeurs de la ligne 1 vont se placer sur toutes les colonnes dont le N° est divisible par 17 (soit 15 cellules entre chaque)
si votre champ ne commence pas en colonne A, retirer le N° de la première colonne à 17 et changer le départ de INDEX
(par exemple si départ est en colonne B, écrire en C (MOD(COLONNE()-1;17)
=SI(MOD(COLONNE()-1;17)=0;INDEX($A$1:$A$150;NB.SI($B$2:A2;"><")+1);"")

vous pouvez ensuite copier cette ligne et faire un collage spécial valeur sur la ligne initiale pour supprimer les formules
effacer ensuite la ligne qui vous a servir.
crdlmnt
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Bonjour,

Je ne pense pas que Hunter "débutant" soit à l'aise avec Excel et encore moins avec le VBA, mais bon
ce code insérera 15 lignes entre chaque données en prenant référence colonne A à partir de la ligne 3

Sub insere_15_lignes()
Dim I As Long
For I = [A65000].End(xlUp).Row To 3 Step -1
Rows(I).Resize(15).Insert
Next I
End Sub

ou en colonne
Sub insere_15_Colonnes()
Dim I As Long
For I = [AZ2].End(xlToLeft).Column To 2 Step -1
Columns(I).Resize(15).Insert
Next I
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0