Modifier le noms des colonnes

Le
jacques
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’Exce=
l
(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
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jacques
Le #18195791
On 19 déc, 18:46, jacques
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
Philippe.R
Le #18196071
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" news:
On 19 déc, 18:46, jacques
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
jacques
Le #18200431
On 21 déc, 20:16, "Philippe.R"
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" On 19 déc, 18:46, jacques




> 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
Philippe.R
Le #18204601
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" news:
On 21 déc, 20:16, "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




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
Publicité
Poster une réponse
Anonyme