Bonjour,
Voila je cherche à pouvoir exporter des données de mon fichier excel vers un document Google Sheet qui est sur mon Google Drive. J'ai mis en partage ce document avec tous les utilisateurs qui ont le lien (y compris pour l'écriture). J'ai cherché à faire une macro pour cela mais je bute en touche....
Dans mon exemple je veux sélectionner les données de la feuille Granit de mon fichier excel de A2 jusqu'à la dernière ligne de la colonne pour ensuite les copier vers Google Sheet (dont le dlien est : https://docs.google.com/spreadsheets/d/1FVThn8ZnIG0huueMG2Hm9pjLbuT2GZ1U/edit#gid=811679162) en cellule A2.
Est-ce que quelqu'un sais comment je dois m'y prendre
j'ai essayé ceci :
	
	
	
	
	
		
mais il ne se passe rien
	
		
			
		
		
	
				
			Voila je cherche à pouvoir exporter des données de mon fichier excel vers un document Google Sheet qui est sur mon Google Drive. J'ai mis en partage ce document avec tous les utilisateurs qui ont le lien (y compris pour l'écriture). J'ai cherché à faire une macro pour cela mais je bute en touche....
Dans mon exemple je veux sélectionner les données de la feuille Granit de mon fichier excel de A2 jusqu'à la dernière ligne de la colonne pour ensuite les copier vers Google Sheet (dont le dlien est : https://docs.google.com/spreadsheets/d/1FVThn8ZnIG0huueMG2Hm9pjLbuT2GZ1U/edit#gid=811679162) en cellule A2.
Est-ce que quelqu'un sais comment je dois m'y prendre
j'ai essayé ceci :
		VB:
	
	
	Sub CopierVersGoogleSheet()
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim rangeToCopy As Range
    Dim googleSheetURL As String
    Dim http As Object
    Dim postData As String
    
    ' Lien vers le Google Sheet
    googleSheetURL = "https://docs.google.com/spreadsheets/d/1FVThn8ZnIG0huueMG2Hm9pjLbuT2GZ1U/edit#gid=811679162"
    
    ' Ouvrir le fichier Excel
    Set wb = ThisWorkbook
    
    ' Définir la feuille "Granit"
    Set ws = wb.Sheets("Granit")
    
    ' Trouver la dernière ligne remplie dans la colonne A
    lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).row
    
    ' Définir la plage à copier
    Set rangeToCopy = ws.Range("A2:A" & lastRow)
    
    ' Copier la plage dans le Presse-papiers
    rangeToCopy.Copy
    
    ' Créer une instance de l'objet XMLHTTP
    Set http = CreateObject("MSXML2.XMLHTTP")
    
    ' Préparer les données à envoyer
    postData = "{""values"": [[" & Join(Application.Transpose(rangeToCopy.Value), ",") & "]]}"
    
    ' Envoyer les données à Google Sheets
    http.Open "PUT", googleSheetURL & "/values/A2:append?valueInputOption=USER_ENTERED", False
    http.setRequestHeader "Content-Type", "application/json"
    http.send postData
    
    ' Nettoyer
    Set http = Nothing
End Submais il ne se passe rien