RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Serv: irc.irc-land.org
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 [bureautique] question de langage

Forum : BUREAUTIQUE
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ BUREAUTIQUE

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGES : [1] [2]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM BUREAUTIQUE

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
ocean
Nouveau membre
Inscrit : 21/05/2008
Messages : 20
Message
#153401
Posté le 23/05/08 à 16:55
Bonjour à tous,
je n'arrive pas à trouver bureautique dans les domaines MP alors j'espère qu'en l'écrivant dans mon sujet ça suffira. Je débute alors j'ai plein de questions à vous demander.
1)je voudrais savoir si le langage visual basic est le même sous excel et sous ecces.
2) Je n'ai toujours pas bien compris comment on cré une macro. j'ai compris qu'on fait nouvelle macro enregistrer sous. C'est après que je comprend. Quelle actions dois je prendre si je veux créer une nouvelle table qui contiendrais des valeurs modifiées de ma table d'origine.
3) j'ai vu que lorsque je clic sur une action cela écrit plein de truc en langage visual basic. Si j'écris un programme qui me dit de transformer les valeur de ma table d'origne en d'autres valeurs, est ce que je dois je le mettre dans le pogramme de mes actions où est ce que je le laisse à part? je ne comprend pas bien tout ça.
4) je voudrais que la variable de mon programme recoive la valeur d'une case de mon tableau et qu'ensuite ma variable va se dépacer d'une case:
quel langage me permet de dire que ma variable recoit la valeur d'une case donnée?
comment je fait pour déclarer le tableau avec ses rang et ses colonnes?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

RGI
Superviseur :
- Logiciels
Modérateur :
- Visual basic
- Bureautique
Avatar de RGI
Inscrit : 21/08/2006
Messages : 1718
Message
#153446
Posté le 24/05/08 à 16:33
Salut Ocean
Ocean dit :
je n'arrive pas à trouver bureautique dans les domaines MP alors j'espère qu'en l'écrivant dans mon sujet ça suffira. Je débute alors j'ai plein de questions à vous demander.1)je voudrais savoir si le langage visual basic est le même sous excel et sous ecces. 2) Je n'ai toujours pas bien compris comment on cré une macro. j'ai compris qu'on fait nouvelle macro enregistrer sous. C'est après que je comprend. Quelle actions dois je prendre si je veux créer une nouvelle table qui contiendrais des valeurs modifiées de ma table d'origine. 3) j'ai vu que lorsque je clic sur une action cela écrit plein de truc en langage visual basic. Si j'écris un programme qui me dit de transformer les valeur de ma table d'origne en d'autres valeurs, est ce que je dois je le mettre dans le pogramme de mes actions où est ce que je le laisse à part? je ne comprend pas bien tout ça.4) je voudrais que la variable de mon programme recoive la valeur d'une case de mon tableau et qu'ensuite ma variable va se dépacer d'une case:quel langage me permet de dire que ma variable recoit la valeur d'une case donnée?comment je fait pour déclarer le tableau avec ses rang et ses colonnes?


Sur MP
le langage VBA et les questions pour Excel et Access sont deux forums distincts, le VBA de Excel est traité dans Bureautique (excel ou VBA) et le VBA de Access est traité dans Base de données (access ou VBA)

donc tu pourras constater que le VB pour faire des applications avec VB6 par exemple est aussi un forum très distinct et séparé des autres VB
(car il y a VB2005, 2008 .VB.NET etc....) sans parler de VB.script

je sais parfois certains mélangent ;-((((

donc pour revenir à la question 1 le langage VBA est quelque peu différent car chaque application emploie des mots différents.

Question 2 et les autres:
Dans l'explication que tu donnes c'est la façon de faire une macro avec l'enregistreur de macro, une macro peut aussi être faites en créant du code dans une procédure ou une fonction que l'on met soit dans des Form ou des modules ou des modules de class
c'est faisable dans excel mais c'est différent dans access
pour modifier une table il faut parfois mélanger le VBA avec le language SQL
mais là il est préférable de prendre un bouquin spécialisé traitant du sujet et de le potasser
si tu parles de table, il s'agit de access sans doute ??? idem il faut potasser ou regarder des tutoriaux il y a en a pleins sur le net avec des exemples

Cdlt

RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique Smiley
merci de poser vos questions VBA à cet endroit
salutations

RGI

Un MERCI en retour c'est sympa
et ne pas oublier le tag :Imageaprès résolution.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

RGI
Superviseur :
- Logiciels
Modérateur :
- Visual basic
- Bureautique
Avatar de RGI
Inscrit : 21/08/2006
Messages : 1718
Message
#153447
Posté le 24/05/08 à 17:12
Salut Océan

voilà de quoi passer un bon moment
ICI Version 2003

ICI Version 2007

Salutations

RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique Smiley
merci de poser vos questions VBA à cet endroit
salutations

RGI

Un MERCI en retour c'est sympa
et ne pas oublier le tag :Imageaprès résolution.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

ocean
Nouveau membre
Inscrit : 21/05/2008
Messages : 20
Message
#153466
Posté le 25/05/08 à 11:46
Salut RGI
Je te remercie de m'avoir dis que sous acces et excel ce n'était pas le même langage. Si tu me dis qu'il faut savoir utiliser le langage sql et viqual basic sous acces je crois que je vais me contenter d'excel. Ce sera sans doute plus simple pour moi. En fait, je dsipose de plusieurs fichiers qui décrivent chacun un endroit donné. Dans chaque tableau j'ai un champ avec une liste de variables (temperature,oxygène...) et le reste de mes champs correspond aux valeurs prises par mes variables pour un mois donné. Ce que je voudrais c'est pouvoir créer un nouveau tableau du même type mais où les valeurs des cellules seraient modifiées selon d'autres critères. Pour cela les outils d'acces et de excel ne peuvent pas m'aider.Jepense qu'il faut faire de la programmation. D'où l'intérêt de mes question 2-3-4. Je ne comprend pas comment on fait pour attribuer à une variable les valeurs données d'un tableau excel? et pour que les cases demon tableau se décalent à chaque fois d'un rang? Une autre question, comment faire pour conserverles entêtes de mes champs alors que le reste du tableau correspond à des chiffres?
J'ai beau chercher sur les aides (excel,microsoft...) je vois comment créerun tableau mais pas comment attribuer les valeurs d'un tableau déjà existant.

Ensuite j'aimerais que tu m'explique ou je dois insérer mon programme lorsque je cré ma macro.

PS désolée la touche espace de l'ordi ne marche pas très bien.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

RGI
Superviseur :
- Logiciels
Modérateur :
- Visual basic
- Bureautique
Avatar de RGI
Inscrit : 21/08/2006
Messages : 1718
Message
#153484
Posté le 26/05/08 à 08:54
Salut Ocean

je ne dis pas que le VBA de Excel est complétement différent du VBA d'access mais comme certains mots sont employés pour excel et d'autres pour access il est facile de comprendre que je dise que ce ne sont pas des langages identiques


Bref pour choisir entre Excel et Access si ton travail consiste à des traitements de tableaux tu peux choisir excel mais si ton travail traite des bases de données il faut prendre access.

pour changer de rang comme tu le dis il faut savoir que excel utilise des lignes et des colonnes (c'est important d'utiliser la même formulation des mots pour se comprendre)
donc pour changer de ligne, il faut rechercher la dernière ligne non vide à laquelle on ajoute 1 ce qui donne la première ligne vide

par exemple dans la colonne A
premierelignevide = range("A65536").end(xlup).row+1

pour attribuer une valeur à une variable on commence par dimensionner cette variable par un Dim ensuite il faut la déclarer c'est à dire dire si cette variable est long ou string ou integer ou etc...(voir l'aide pour ces déclarations)

ceci fait on peut dire variable1 = range("a1").value
c'est a dire qu'a la variable (variable1) on donne la valeur de la cellul A1

on peut également faire le contraire
range("a1").value = variable1

voilà pour commencer

RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique Smiley
merci de poser vos questions VBA à cet endroit
salutations

RGI

Un MERCI en retour c'est sympa
et ne pas oublier le tag :Imageaprès résolution.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

RGI
Superviseur :
- Logiciels
Modérateur :
- Visual basic
- Bureautique
Avatar de RGI
Inscrit : 21/08/2006
Messages : 1718
Message
#153486
Posté le 26/05/08 à 09:27
voilà un petit exemple

ICI


RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique Smiley
merci de poser vos questions VBA à cet endroit
salutations

RGI

Un MERCI en retour c'est sympa
et ne pas oublier le tag :Imageaprès résolution.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

ocean
Nouveau membre
Inscrit : 21/05/2008
Messages : 20
Message
#153496
Posté le 26/05/08 à 15:08
Salut RGI
Merci tu m'as bien éclairé. Comme j'ai pludieurs tables qui traitent du même genre de donnée et que je veux pouvoir regrouper une ligne donnée de chaque table dans un seul et même fichier je suis obligé d'utiliser acces. Sans toi j'aurais toutjours été en train de chercher une solution pour faire ça sous excel.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

RGI
Superviseur :
- Logiciels
Modérateur :
- Visual basic
- Bureautique
Avatar de RGI
Inscrit : 21/08/2006
Messages : 1718
Message
#153497
Posté le 26/05/08 à 15:36
Donc comme tu vas utiliser access tu vas être obligée de faire des formulaires pour ajouter ou supprimer des données sur tes tables.
et tu feras de requete pour filtrer tes données (par exemple)

ensuite tu feras des états pour visualiser le résultats de tes requetes et pour pouvoir les imprimer.

Bon courage dans tes recherches
PS: le forum Access sur trouve dans base de données sur MP
je ne sais pas s'il y a beaucoup d'intervenants en ce moment

Cdlt

RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique Smiley
merci de poser vos questions VBA à cet endroit
salutations

RGI

Un MERCI en retour c'est sympa
et ne pas oublier le tag :Imageaprès résolution.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

ocean
Nouveau membre
Inscrit : 21/05/2008
Messages : 20
Message
#153527
Posté le 27/05/08 à 16:50
Salut RGI,
Nouveau changement de cape!et cette fois c'est la dernière.
J'ai trouvé un moyen sous excel qui me permettra (je l'espère de faire ce que je veux).Par contre je n'ai toujours pas bien compris comment marche les numéros des cellules et j'ai 4 problèmes (je te précise que je travaille toujours à partir d'un tableau excel).

1)Je ne suis pas bien sûre que ma méthode soit la meilleure pour définir mon tableau de données excel et joindre ses valeurs à mes variables.
2) je ne sais pas quand il faut utiliser A1 et quand il faut utiliser 1,1.
Avec la boucle for j'arrive à utiliser les ".cells(1,2). value";
par contre avec while je n'y arrive pas. je te précise que j'ai utiliser la boucle for dans un autre petit programme.
3)Avec les A1... je ne comprend comment faire pour décaler mes cellules. J'ai pourtant essayé avec :
"Range("C9").Select
ActiveCell.Offset(0, 1) "
4) J'ai toute une ligne avec des chiffres. j'ai dit que la variable compteur recevait les valeurs des cellules de ma ligne à chaque décalage de cellule. Juste après la serie de chiffre j'ai une cellule avec le mot mini.
dans ma condition while j'ai mis: tant que ma variable compteur est différente du mot "mini" alors faire...
a chaque fois excel plante. La boucle ne doit pas s'arrêter et je ne comprend pas pourquoi la condition ne marche pas. j'ai essyé avec une ligne de date de mon tableau qui se termine par des cases vides(condition::<>""). c'est la même chose.
je t'envois mon script pour que tu puisse mieux te rendre compte. (attention il me fait planté excel si je lance la macro)

Sub Macro()

Dim mois1, mois2 As Date
Dim compteur As Variant
Set datatablerange = Worksheets("0").Range("B2:M14")
Set rowinpoutcell = Worksheets("0").Range("B2")
mois1 = Worksheets("0").Range("B9").Value
mois1 = Worksheets("0").Range("C9").Value
compteur = Worksheets("0").Range("B10").Value
campagne = 1

While compteur <> "mini"
If mois1 <> mois2 Then campagne = 1
If mois1 = mois2 Then campagne = campagne + 1
Worksheets("0").Range("B8").Value = campagne
Range("B9").Select
ActiveCell.Offset(0, 1).Activate
Range("C9").Select
ActiveCell.Offset(0, 1).Activate
Range("B10").Select
ActiveCell.Offset(0, 1).Activate

Wend
End Sub

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

RGI
Superviseur :
- Logiciels
Modérateur :
- Visual basic
- Bureautique
Avatar de RGI
Inscrit : 21/08/2006
Messages : 1718
Message
#153531
Posté le 27/05/08 à 17:40
Bonjour Ocean

la feuille se nomme "0" ??? ou c'est la feuille n° 1 car il n'y a pas de feuille 0

moi j'ai mis "zero"


Sub Macro()
Dim mois1, mois2 As String 'As Date 'ici erreur
Dim compteur As Variant
Set datatablerange = Worksheets("zero").Range("B2:M14")
Set rowinpoutcell = Worksheets("zero").Range("B2")
mois1 = Worksheets("zero").Range("B9").Value
mois 2 = Worksheets("zero").Range("C9").Value 'ici erreur
compteur = Worksheets("zero").Range("B10").Value
campagne = 1
While compteur <> "mini"
If mois1 <> mois2 Then campagne = 1
If mois1 = mois2 Then campagne = campagne + 1
Worksheets("zero").Range("B8").Value = campagne
Range("B9").Select
ActiveCell.Offset(0, 1).Activate ' tu fais quoi ?

Range("C9").Select
ActiveCell.Offset(0, 1).Activate ' tu fais quoi ?

Range("B10").Select
ActiveCell.Offset(0, 1).Activate ' tu fais quoi ?

Wend
End Sub



explications pour le range

range("colonne ligne") ex: range("A1") peut aussi s'ecrire range("A" & "1")

donc si nous avons ligne comme variable de ligne on peut ecrire

range("A" & ligne) sans guillemet à ligne ;-))

si nous avons col comme variable de colonne nous pouvons ecrire

Range(col & "1").Select

et si nous avons deux variables nous pouvons ecrire

Range(col & lig).Select

la manipe avec cells

cells(1,1) => cells(ligne,colonne) attention c'est l'inverse de range et sépareé par une virgule

pour les offset il y a moyen de faire plus court mais c'est bon

j'ai essayé la macro elle fonctionne mais bien entendu elle tourne en rond
pour arrêter faire Ctrl + Pause et cliquer sur le bouton débogage

RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique Smiley
merci de poser vos questions VBA à cet endroit
salutations

RGI

Un MERCI en retour c'est sympa
et ne pas oublier le tag :Imageaprès résolution.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM BUREAUTIQUE



    PAGES : [1] [2]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.