Ajouter des cellules vides

Fermé
hunter - 17 avril 2015 à 22:50
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 - 18 avril 2015 à 07:52
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 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
17 avril 2015 à 23:06
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 58731 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 novembre 2024 17 243
18 avril 2015 à 06:37
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 58731 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 novembre 2024 17 243
18 avril 2015 à 06:46
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 samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523
18 avril 2015 à 07:04
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 lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
18 avril 2015 à 07:16
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 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
Modifié par Mike-31 le 18/04/2015 à 08:16
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