Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Modifier le noms des colonnes

4 réponses
Avatar
jacques
Bonjour,

J=92int=E8gre dans une table Access par =AB DoCmd.TransferSpreadsheet
acImport =BB
des donn=E9es d=92une table Excel, mais certain Titre des colonnes d=92Exce=
l
(R1, AC1, AD1, AE1, AF1 )
sont long et je voudrais les renommer lors de l=92int=E9gration des
donn=E9es.

D=E9but du code :
'--- Pr=E9parer la bo=EEte de dialogue Ouvrir
Set fd =3D Application.FileDialog(msoFileDialogFilePicker)
fd.Title =3D "Choisissez un classeur"
fd.InitialFileName =3D "*.xls"
fd.AllowMultiSelect =3D True

'--- Personnaliser la liste d=E9roulante Type de fichier
fd.Filters.Clear
fd.Filters.Add "Fichiers Excel", "*.xls"
fd.Filters.Add "Tous les fichiers", "*.*"
fd.FilterIndex =3D 1

'--- Ouvrir la bo=EEte de dialogue
If fd.Show =3D 0 Then

'--- L'action a =E9t=E9 annul=E9e
Set fd =3D Nothing
Exit Sub
End If

'--- Ouverture de l'application
Set xlApp =3D CreateObject("Excel.Application")
xlApp.Visible =3D False

Set xlw =3D xlApp.ActiveWorkbook '--- R=E9cup=E9ration du classeur
par d=E9faut

'--- Ouvrir chaque document s=E9lectionn=E9 et le traiter
For Each varFichier In fd.SelectedItems
xlApp.Workbooks.Open (varFichier)

Traitement pour modifier les titres des colonnes R1, AC1, AD1, AE1,
AF1

'--- Passer =E0 la partie Importation Feuille
DoCmd.TransferSpreadsheet acImport, _
acSpreadsheetTypeExcel9, "tbl Adh=E9rents", varFichier, True,
strFeuille & "!A1:AD20000"

Y =E0-t=92il une solution ? Si oui comment ?

Merci pour votre aide.

Salutations

4 réponses

Avatar
jacques
On 19 déc, 18:46, jacques wrote:
Bonjour,

J’intègre dans une table Access par «  DoCmd.TransferSpreadsheet
acImport »
des données d’une table Excel, mais certain Titre des colonnes d’Ex cel
(R1, AC1, AD1, AE1, AF1 )
sont long et je voudrais les renommer lors de l’intégration des
données.

Début du code :
'--- Préparer la boîte de dialogue Ouvrir
     Set fd = Application.FileDialog(msoFileDialogFilePicker)
     fd.Title = "Choisissez un classeur"
     fd.InitialFileName = "*.xls"
     fd.AllowMultiSelect = True

'--- Personnaliser la liste déroulante Type de fichier
     fd.Filters.Clear
     fd.Filters.Add "Fichiers Excel", "*.xls"
     fd.Filters.Add "Tous les fichiers", "*.*"
     fd.FilterIndex = 1

'--- Ouvrir la boîte de dialogue
     If fd.Show = 0 Then

'--- L'action a été annulée
     Set fd = Nothing
     Exit Sub
End If

'--- Ouverture de l'application
     Set xlApp = CreateObject("Excel.Application")
     xlApp.Visible = False

  Set xlw = xlApp.ActiveWorkbook      '--- Récupération du classeur
par défaut

'--- Ouvrir chaque document sélectionné et le traiter
     For Each varFichier In fd.SelectedItems
     xlApp.Workbooks.Open (varFichier)

Traitement pour modifier les titres des colonnes R1, AC1, AD1, AE1,
AF1

'--- Passer à la partie Importation Feuille
     DoCmd.TransferSpreadsheet acImport, _
         acSpreadsheetTypeExcel9, "tbl Adhérents", varFichier , True,
strFeuille & "!A1:AD20000"

Y à-t’il une solution ? Si oui comment ?

Merci pour votre aide.

Salutations



Bonsoir,

Personne pour m'aider ?

Je continu mes recherches sans succès.

J’ai essayé ce code rudimentaire, en débogage pas à pas je passe su r
toutes les lignes
Mais aucunes modifications ne se fait sur ma feuille. Pour quelle
raisons ?

With ActiveWorkbook.Sheets("Liste")

.Range("R1").ClearContents
.Range("R1").Value = "Nouveau nom"

.Range("AC1").ClearContents
.Range("AC1").Value = "Nouveau nom"

.Range("AD1").ClearContents
.Range("AD1").Value = "Nouveau nom"

.Range("AE1").ClearContents
.Range("AE1").Value = "Nouveau nom"

.Range("AF1").ClearContents
.Range("AF1").Value = "Nouveau nom"

End With

Salutations
Avatar
Philippe.R
Bonsoir,
Chez moi, ton code fonctionne parfaitement ; tu peux aussi l'alléger ainsi :

With ActiveWorkbook.Sheets("Liste")
.Range("R1").Value = "Nouveau nom"

.Range("AC1").Value = "Nouveau nom"

.Range("AD1").Value = "Nouveau nom"

.Range("AE1").Value = "Nouveau nom"

.Range("AF1").Value = "Nouveau nom"
End With

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"jacques" a écrit dans le message de
news:
On 19 déc, 18:46, jacques wrote:
Bonjour,

J’intègre dans une table Access par « DoCmd.TransferSpreadsheet
acImport »
des données d’une table Excel, mais certain Titre des colonnes d’Excel
(R1, AC1, AD1, AE1, AF1 )
sont long et je voudrais les renommer lors de l’intégration des
données.

Début du code :
'--- Préparer la boîte de dialogue Ouvrir
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.Title = "Choisissez un classeur"
fd.InitialFileName = "*.xls"
fd.AllowMultiSelect = True

'--- Personnaliser la liste déroulante Type de fichier
fd.Filters.Clear
fd.Filters.Add "Fichiers Excel", "*.xls"
fd.Filters.Add "Tous les fichiers", "*.*"
fd.FilterIndex = 1

'--- Ouvrir la boîte de dialogue
If fd.Show = 0 Then

'--- L'action a été annulée
Set fd = Nothing
Exit Sub
End If

'--- Ouverture de l'application
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = False

Set xlw = xlApp.ActiveWorkbook '--- Récupération du classeur
par défaut

'--- Ouvrir chaque document sélectionné et le traiter
For Each varFichier In fd.SelectedItems
xlApp.Workbooks.Open (varFichier)

Traitement pour modifier les titres des colonnes R1, AC1, AD1, AE1,
AF1

'--- Passer à la partie Importation Feuille
DoCmd.TransferSpreadsheet acImport, _
acSpreadsheetTypeExcel9, "tbl Adhérents", varFichier, True,
strFeuille & "!A1:AD20000"

Y à-t’il une solution ? Si oui comment ?

Merci pour votre aide.

Salutations



Bonsoir,

Personne pour m'aider ?

Je continu mes recherches sans succès.

J’ai essayé ce code rudimentaire, en débogage pas à pas je passe sur
toutes les lignes
Mais aucunes modifications ne se fait sur ma feuille. Pour quelle
raisons ?

With ActiveWorkbook.Sheets("Liste")

.Range("R1").ClearContents
.Range("R1").Value = "Nouveau nom"

.Range("AC1").ClearContents
.Range("AC1").Value = "Nouveau nom"

.Range("AD1").ClearContents
.Range("AD1").Value = "Nouveau nom"

.Range("AE1").ClearContents
.Range("AE1").Value = "Nouveau nom"

.Range("AF1").ClearContents
.Range("AF1").Value = "Nouveau nom"

End With

Salutations
Avatar
jacques
On 21 déc, 20:16, "Philippe.R" <AS_rauphil_chez_wanadoo.fr> wrote:
Bonsoir,
Chez moi, ton code fonctionne parfaitement ; tu peux aussi l'alléger ai nsi :

With ActiveWorkbook.Sheets("Liste")
  .Range("R1").Value = "Nouveau nom"

  .Range("AC1").Value = "Nouveau nom"

  .Range("AD1").Value = "Nouveau nom"

  .Range("AE1").Value = "Nouveau nom"

  .Range("AF1").Value = "Nouveau nom"
End With

--
Avec plaisirhttp://dj.joss.free.fr/trombine.htmhttp://jacxl.free.fr/mpfe/ trombino.html
Philippe.R
Pour se connecter au forum :http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"jacques" a écrit dans le message denews:83c9411c-641d-4
On 19 déc, 18:46, jacques wrote:





> Bonjour,

> J’intègre dans une table Access par « DoCmd.TransferSpreadsheet
> acImport »
> des données d’une table Excel, mais certain Titre des colonnes d’ Excel
> (R1, AC1, AD1, AE1, AF1 )
> sont long et je voudrais les renommer lors de l’intégration des
> données.

> Début du code :
> '--- Préparer la boîte de dialogue Ouvrir
> Set fd = Application.FileDialog(msoFileDialogFilePicker)
> fd.Title = "Choisissez un classeur"
> fd.InitialFileName = "*.xls"
> fd.AllowMultiSelect = True

> '--- Personnaliser la liste déroulante Type de fichier
> fd.Filters.Clear
> fd.Filters.Add "Fichiers Excel", "*.xls"
> fd.Filters.Add "Tous les fichiers", "*.*"
> fd.FilterIndex = 1

> '--- Ouvrir la boîte de dialogue
> If fd.Show = 0 Then

> '--- L'action a été annulée
> Set fd = Nothing
> Exit Sub
> End If

> '--- Ouverture de l'application
> Set xlApp = CreateObject("Excel.Application")
> xlApp.Visible = False

> Set xlw = xlApp.ActiveWorkbook '--- Récupération du classeur
> par défaut

> '--- Ouvrir chaque document sélectionné et le traiter
> For Each varFichier In fd.SelectedItems
> xlApp.Workbooks.Open (varFichier)

> Traitement pour modifier les titres des colonnes R1, AC1, AD1, AE1,
> AF1

> '--- Passer à la partie Importation Feuille
> DoCmd.TransferSpreadsheet acImport, _
> acSpreadsheetTypeExcel9, "tbl Adhérents", varFichier, True,
> strFeuille & "!A1:AD20000"

> Y à-t’il une solution ? Si oui comment ?

> Merci pour votre aide.

> Salutations

Bonsoir,

Personne pour m'aider ?

Je continu mes recherches sans succès.

J’ai essayé ce code rudimentaire, en débogage pas à pas je passe sur
toutes les lignes
Mais aucunes modifications ne se fait sur ma feuille. Pour quelle
raisons ?

With ActiveWorkbook.Sheets("Liste")

  .Range("R1").ClearContents
  .Range("R1").Value = "Nouveau nom"

  .Range("AC1").ClearContents
  .Range("AC1").Value = "Nouveau nom"

  .Range("AD1").ClearContents
  .Range("AD1").Value = "Nouveau nom"

  .Range("AE1").ClearContents
  .Range("AE1").Value = "Nouveau nom"

  .Range("AF1").ClearContents
  .Range("AF1").Value = "Nouveau nom"

End With

Salutations- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour Philippe,

Merci pour ta réponse.

Une précision, je lance le code à partir d'un contrôle d'un formulair e
access
qui se trouve dans ma basse de donnée Access.

Salutations
Avatar
Philippe.R
Bonsoir,
Je n'ai pas Access et ne maîtrise pas cet outil, mais il me vient une
question :
ActiveWorkbook.Sheets("Liste") a t il un sens pour le VBA Access ?
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"jacques" a écrit dans le message de
news:
On 21 déc, 20:16, "Philippe.R" <AS_rauphil_chez_wanadoo.fr> wrote:
Bonsoir,
Chez moi, ton code fonctionne parfaitement ; tu peux aussi l'alléger ainsi
:

With ActiveWorkbook.Sheets("Liste")
.Range("R1").Value = "Nouveau nom"

.Range("AC1").Value = "Nouveau nom"

.Range("AD1").Value = "Nouveau nom"

.Range("AE1").Value = "Nouveau nom"

.Range("AF1").Value = "Nouveau nom"
End With




Bonjour Philippe,

Merci pour ta réponse.

Une précision, je lance le code à partir d'un contrôle d'un formulaire
access
qui se trouve dans ma basse de donnée Access.

Salutations