But :
Remplacer les données d'une plage par la valeur d'une cellule par une macro.
Les données :
Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du
style 01, 02, 03, etc...) qui représentent les mois de l'année.
Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une valeur
ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage G2:H402
par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01()
'
' Phase01 Macro
' Macro enregistrée le 02/09/2005 par Alex
'
' donnée principale
Sheets("base").Select
Range("H1").Select
' valeur PRIMAIRE
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message.
Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons.
Title = "Mois à exporter en compta " ' Définit le titre.
' Affiche le message.
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' L'utilisateur a choisi Oui.
MyString = "Oui" ' Effectue une action.
' déclare variable de chaine
Dim answer As String
' affecte la valeur à envoyer dans la boite de dialogue
answer = InputBox(Prompt:="quelle est la feuille à traiter?")
'boucle
If answer = Empty Then
MsgBox Prompt:="saisir un format de mois (00) comme les feuilles
excel"
' purge des données sur "export"
Range("A1:C1").Select
Sheets("export").Select
Cells.Select
Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité"
Range("A1").Select
Sheets("BASE").Select
Range("A1:C1").Select
Sheets("MasqueComptabilité").Select
Range("A1:J406").Select
Selection.Copy
Sheets("export").Select
ActiveSheet.Paste
Range("A1").Select
Application.CutCopyMode = False
Calculate
Range("B2").Select
Sheets("BASE").Select
Range("H1").Select
'Positionnement pour vérification
Sheets("export").Select
Range("I405").Select
' message
MsgBox "dans cette étape, vous pouvez modifier des données.
L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la
deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non.
MyString = "Non" ' Effectue une action.
MsgBox "aucune action effectuée"
End If
End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format
SAGE.
Il me reste plus que cette broutille !
Faut-il déclarer une variable ?
But : Remplacer les données d'une plage par la valeur d'une cellule par une macro.
Les données : Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du style 01, 02, 03, etc...) qui représentent les mois de l'année. Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une valeur ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage G2:H402 par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01() ' ' Phase01 Macro ' Macro enregistrée le 02/09/2005 par Alex ' ' donnée principale Sheets("base").Select Range("H1").Select
' valeur PRIMAIRE Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons. Title = "Mois à exporter en compta " ' Définit le titre. ' Affiche le message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' L'utilisateur a choisi Oui. MyString = "Oui" ' Effectue une action. ' déclare variable de chaine Dim answer As String ' affecte la valeur à envoyer dans la boite de dialogue answer = InputBox(Prompt:="quelle est la feuille à traiter?") 'boucle If answer = Empty Then MsgBox Prompt:="saisir un format de mois (00) comme les feuilles excel"
' purge des données sur "export" Range("A1:C1").Select Sheets("export").Select Cells.Select Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité" Range("A1").Select Sheets("BASE").Select Range("A1:C1").Select Sheets("MasqueComptabilité").Select Range("A1:J406").Select Selection.Copy Sheets("export").Select ActiveSheet.Paste Range("A1").Select Application.CutCopyMode = False Calculate Range("B2").Select Sheets("BASE").Select Range("H1").Select
'Positionnement pour vérification Sheets("export").Select Range("I405").Select ' message MsgBox "dans cette étape, vous pouvez modifier des données. L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non. MyString = "Non" ' Effectue une action. MsgBox "aucune action effectuée"
End If End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format SAGE. Il me reste plus que cette broutille ! Faut-il déclarer une variable ?
But :
Remplacer les données d'une plage par la valeur d'une cellule par une macro.
Les données :
Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du
style 01, 02, 03, etc...) qui représentent les mois de l'année.
Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une valeur
ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage G2:H402
par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01()
'
' Phase01 Macro
' Macro enregistrée le 02/09/2005 par Alex
'
' donnée principale
Sheets("base").Select
Range("H1").Select
' valeur PRIMAIRE
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message.
Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons.
Title = "Mois à exporter en compta " ' Définit le titre.
' Affiche le message.
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' L'utilisateur a choisi Oui.
MyString = "Oui" ' Effectue une action.
' déclare variable de chaine
Dim answer As String
' affecte la valeur à envoyer dans la boite de dialogue
answer = InputBox(Prompt:="quelle est la feuille à traiter?")
'boucle
If answer = Empty Then
MsgBox Prompt:="saisir un format de mois (00) comme les feuilles
excel"
' purge des données sur "export"
Range("A1:C1").Select
Sheets("export").Select
Cells.Select
Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité"
Range("A1").Select
Sheets("BASE").Select
Range("A1:C1").Select
Sheets("MasqueComptabilité").Select
Range("A1:J406").Select
Selection.Copy
Sheets("export").Select
ActiveSheet.Paste
Range("A1").Select
Application.CutCopyMode = False
Calculate
Range("B2").Select
Sheets("BASE").Select
Range("H1").Select
'Positionnement pour vérification
Sheets("export").Select
Range("I405").Select
' message
MsgBox "dans cette étape, vous pouvez modifier des données.
L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la
deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non.
MyString = "Non" ' Effectue une action.
MsgBox "aucune action effectuée"
End If
End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format
SAGE.
Il me reste plus que cette broutille !
Faut-il déclarer une variable ?
But : Remplacer les données d'une plage par la valeur d'une cellule par une macro.
Les données : Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du style 01, 02, 03, etc...) qui représentent les mois de l'année. Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une valeur ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage G2:H402 par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01() ' ' Phase01 Macro ' Macro enregistrée le 02/09/2005 par Alex ' ' donnée principale Sheets("base").Select Range("H1").Select
' valeur PRIMAIRE Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons. Title = "Mois à exporter en compta " ' Définit le titre. ' Affiche le message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' L'utilisateur a choisi Oui. MyString = "Oui" ' Effectue une action. ' déclare variable de chaine Dim answer As String ' affecte la valeur à envoyer dans la boite de dialogue answer = InputBox(Prompt:="quelle est la feuille à traiter?") 'boucle If answer = Empty Then MsgBox Prompt:="saisir un format de mois (00) comme les feuilles excel"
' purge des données sur "export" Range("A1:C1").Select Sheets("export").Select Cells.Select Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité" Range("A1").Select Sheets("BASE").Select Range("A1:C1").Select Sheets("MasqueComptabilité").Select Range("A1:J406").Select Selection.Copy Sheets("export").Select ActiveSheet.Paste Range("A1").Select Application.CutCopyMode = False Calculate Range("B2").Select Sheets("BASE").Select Range("H1").Select
'Positionnement pour vérification Sheets("export").Select Range("I405").Select ' message MsgBox "dans cette étape, vous pouvez modifier des données. L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non. MyString = "Non" ' Effectue une action. MsgBox "aucune action effectuée"
End If End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format SAGE. Il me reste plus que cette broutille ! Faut-il déclarer une variable ?
Alexandre
af
Merci pour ta réponse mais je n'ai aucun remplacement de ABC par le contenu de la cellule H1 de la feuille "base". Je remets le code ici... si quelqu'un a une autre idée. Par avance, merci. Alex
Sub Phase01() ' ' Phase01 Macro ' Macro enregistrée le 02/09/2005 par Alex ' ' donnée principale Sheets("base").Select Range("H1").Select
' valeur PRIMAIRE Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons. Title = "Mois à exporter en compta " ' Définit le titre. ' Affiche le message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' L'utilisateur a choisi Oui. MyString = "Oui" ' Effectue une action. ' déclare variable de chaine Dim answer As String If answer = Empty Then
' purge des données sur "export" Range("A1:C1").Select Sheets("export").Select Cells.Select Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité" Range("A1").Select Sheets("BASE").Select Range("A1:C1").Select Sheets("MasqueComptabilité").Select Range("A1:J406").Select Selection.Copy Sheets("export").Select ActiveSheet.Paste Range("A1").Select Application.CutCopyMode = False Calculate Range("B2").Select Sheets("BASE").Select Range("H1").Select
'Positionnement pour vérification Sheets("export").Select Range("I405").Select ' message MsgBox "dans cette étape, vous pouvez modifier des données. L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non. MyString = "Non" ' Effectue une action. MsgBox "aucune action effectuée"
But : Remplacer les données d'une plage par la valeur d'une cellule par une macro.
Les données : Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du style 01, 02, 03, etc...) qui représentent les mois de l'année. Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une valeur ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage G2:H402 par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01() ' ' Phase01 Macro ' Macro enregistrée le 02/09/2005 par Alex ' ' donnée principale Sheets("base").Select Range("H1").Select
' valeur PRIMAIRE Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons. Title = "Mois à exporter en compta " ' Définit le titre. ' Affiche le message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' L'utilisateur a choisi Oui. MyString = "Oui" ' Effectue une action. ' déclare variable de chaine Dim answer As String ' affecte la valeur à envoyer dans la boite de dialogue answer = InputBox(Prompt:="quelle est la feuille à traiter?") 'boucle If answer = Empty Then MsgBox Prompt:="saisir un format de mois (00) comme les feuilles excel"
' purge des données sur "export" Range("A1:C1").Select Sheets("export").Select Cells.Select Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité" Range("A1").Select Sheets("BASE").Select Range("A1:C1").Select Sheets("MasqueComptabilité").Select Range("A1:J406").Select Selection.Copy Sheets("export").Select ActiveSheet.Paste Range("A1").Select Application.CutCopyMode = False Calculate Range("B2").Select Sheets("BASE").Select Range("H1").Select
'Positionnement pour vérification Sheets("export").Select Range("I405").Select ' message MsgBox "dans cette étape, vous pouvez modifier des données. L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non. MyString = "Non" ' Effectue une action. MsgBox "aucune action effectuée"
End If End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format SAGE. Il me reste plus que cette broutille ! Faut-il déclarer une variable ?
Alexandre
Merci pour ta réponse mais je n'ai aucun remplacement de ABC par le contenu
de la cellule H1 de la feuille "base".
Je remets le code ici... si quelqu'un a une autre idée. Par avance, merci.
Alex
Sub Phase01()
'
' Phase01 Macro
' Macro enregistrée le 02/09/2005 par Alex
'
' donnée principale
Sheets("base").Select
Range("H1").Select
' valeur PRIMAIRE
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message.
Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons.
Title = "Mois à exporter en compta " ' Définit le titre.
' Affiche le message.
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' L'utilisateur a choisi Oui.
MyString = "Oui" ' Effectue une action.
' déclare variable de chaine
Dim answer As String
If answer = Empty Then
' purge des données sur "export"
Range("A1:C1").Select
Sheets("export").Select
Cells.Select
Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité"
Range("A1").Select
Sheets("BASE").Select
Range("A1:C1").Select
Sheets("MasqueComptabilité").Select
Range("A1:J406").Select
Selection.Copy
Sheets("export").Select
ActiveSheet.Paste
Range("A1").Select
Application.CutCopyMode = False
Calculate
Range("B2").Select
Sheets("BASE").Select
Range("H1").Select
'Positionnement pour vérification
Sheets("export").Select
Range("I405").Select
' message
MsgBox "dans cette étape, vous pouvez modifier des données.
L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la
deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non.
MyString = "Non" ' Effectue une action.
MsgBox "aucune action effectuée"
End If
End Sub
"FxM" <nullos@greuchmeu.ici> a écrit dans le message de news:
dft3ut.3vuds27.1@maison.ici...
But :
Remplacer les données d'une plage par la valeur d'une cellule par une
macro.
Les données :
Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du
style 01, 02, 03, etc...) qui représentent les mois de l'année.
Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une
valeur ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage
G2:H402 par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01()
'
' Phase01 Macro
' Macro enregistrée le 02/09/2005 par Alex
'
' donnée principale
Sheets("base").Select
Range("H1").Select
' valeur PRIMAIRE
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message.
Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons.
Title = "Mois à exporter en compta " ' Définit le titre.
' Affiche le message.
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' L'utilisateur a choisi Oui.
MyString = "Oui" ' Effectue une action.
' déclare variable de chaine
Dim answer As String
' affecte la valeur à envoyer dans la boite de dialogue
answer = InputBox(Prompt:="quelle est la feuille à traiter?")
'boucle
If answer = Empty Then
MsgBox Prompt:="saisir un format de mois (00) comme les
feuilles excel"
' purge des données sur "export"
Range("A1:C1").Select
Sheets("export").Select
Cells.Select
Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité"
Range("A1").Select
Sheets("BASE").Select
Range("A1:C1").Select
Sheets("MasqueComptabilité").Select
Range("A1:J406").Select
Selection.Copy
Sheets("export").Select
ActiveSheet.Paste
Range("A1").Select
Application.CutCopyMode = False
Calculate
Range("B2").Select
Sheets("BASE").Select
Range("H1").Select
'Positionnement pour vérification
Sheets("export").Select
Range("I405").Select
' message
MsgBox "dans cette étape, vous pouvez modifier des données.
L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la
deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non.
MyString = "Non" ' Effectue une action.
MsgBox "aucune action effectuée"
End If
End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format
SAGE.
Il me reste plus que cette broutille !
Faut-il déclarer une variable ?
Merci pour ta réponse mais je n'ai aucun remplacement de ABC par le contenu de la cellule H1 de la feuille "base". Je remets le code ici... si quelqu'un a une autre idée. Par avance, merci. Alex
Sub Phase01() ' ' Phase01 Macro ' Macro enregistrée le 02/09/2005 par Alex ' ' donnée principale Sheets("base").Select Range("H1").Select
' valeur PRIMAIRE Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons. Title = "Mois à exporter en compta " ' Définit le titre. ' Affiche le message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' L'utilisateur a choisi Oui. MyString = "Oui" ' Effectue une action. ' déclare variable de chaine Dim answer As String If answer = Empty Then
' purge des données sur "export" Range("A1:C1").Select Sheets("export").Select Cells.Select Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité" Range("A1").Select Sheets("BASE").Select Range("A1:C1").Select Sheets("MasqueComptabilité").Select Range("A1:J406").Select Selection.Copy Sheets("export").Select ActiveSheet.Paste Range("A1").Select Application.CutCopyMode = False Calculate Range("B2").Select Sheets("BASE").Select Range("H1").Select
'Positionnement pour vérification Sheets("export").Select Range("I405").Select ' message MsgBox "dans cette étape, vous pouvez modifier des données. L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non. MyString = "Non" ' Effectue une action. MsgBox "aucune action effectuée"
But : Remplacer les données d'une plage par la valeur d'une cellule par une macro.
Les données : Sur une Feuille1, dans la cellule H1, j'ai une valeur de type texte (du style 01, 02, 03, etc...) qui représentent les mois de l'année. Sur une Feuille2, toute une plage fixe de donnée G2:H402 contient une valeur ABC (qui correspond au nom des feuilles 01 à 12)
Sur cette feuille2, je souhaite remplacer tous les ABC de la plage G2:H402 par la valeur de la feuille1 en H1.
Ca parait tout simple, mais je bloque.
Merci d'avance pour vos réponses.
Voici le code de cette première phase :
Sub Phase01() ' ' Phase01 Macro ' Macro enregistrée le 02/09/2005 par Alex ' ' donnée principale Sheets("base").Select Range("H1").Select
' valeur PRIMAIRE Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = "macro lancée, voulez-vous continuer ?" ' Définit le message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Définit les boutons. Title = "Mois à exporter en compta " ' Définit le titre. ' Affiche le message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' L'utilisateur a choisi Oui. MyString = "Oui" ' Effectue une action. ' déclare variable de chaine Dim answer As String ' affecte la valeur à envoyer dans la boite de dialogue answer = InputBox(Prompt:="quelle est la feuille à traiter?") 'boucle If answer = Empty Then MsgBox Prompt:="saisir un format de mois (00) comme les feuilles excel"
' purge des données sur "export" Range("A1:C1").Select Sheets("export").Select Cells.Select Selection.ClearContents
' copie des infos sur "export" depuis "masque comptabilité" Range("A1").Select Sheets("BASE").Select Range("A1:C1").Select Sheets("MasqueComptabilité").Select Range("A1:J406").Select Selection.Copy Sheets("export").Select ActiveSheet.Paste Range("A1").Select Application.CutCopyMode = False Calculate Range("B2").Select Sheets("BASE").Select Range("H1").Select
'Positionnement pour vérification Sheets("export").Select Range("I405").Select ' message MsgBox "dans cette étape, vous pouvez modifier des données. L'équilibre doit être respecté. Sur les comptes de classe 6 et 7, la deuxième ligne est pour l'analytique"
End If
Else ' L'utilisateur a choisi Non. MyString = "Non" ' Effectue une action. MsgBox "aucune action effectuée"
End If End Sub
La phase 2 fonctionne. C'est un export comptable et un import au format SAGE. Il me reste plus que cette broutille ! Faut-il déclarer une variable ?