<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog personnel de Jérémy TRUFIER &#187; base de données</title>
	<atom:link href="http://www.jeremy-trufier.net/tag/base-de-donnees/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeremy-trufier.net</link>
	<description>Un blog utilisant WordPress</description>
	<lastBuildDate>Fri, 01 Apr 2011 16:50:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Google Doc Spreadsheets &#8211; Requêter une table</title>
		<link>http://www.jeremy-trufier.net/2010/09/23/google-doc-spreadsheets-requeter-une-table/</link>
		<comments>http://www.jeremy-trufier.net/2010/09/23/google-doc-spreadsheets-requeter-une-table/#comments</comments>
		<pubDate>Thu, 23 Sep 2010 14:00:00 +0000</pubDate>
		<dc:creator>Jérémy TRUFIER</dc:creator>
				<category><![CDATA[Application]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[base de données]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google spreadsheets]]></category>
		<category><![CDATA[query]]></category>
		<category><![CDATA[requêtes]]></category>
		<category><![CDATA[tableur]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.jeremy-trufier.net/?p=109</guid>
		<description><![CDATA[Aujourd&#8217;hui nous allons parler un petit peu de Google Doc Spreadsheets et des possibilités qu&#8217;il donne. Il est possible de faire une base de donnée en google doc spreadsheet&#8230; &#171;&#160;Hein que quoi ?! on m&#8217;aurait caché des choses ?&#160;&#187; Yep yep, et c&#8217;est super simple. Bien entendu nous parlons d&#8217;une base de donnée locale utilisable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/google_docs_logo.png" rel="lightbox[109]"><img class="alignright size-full wp-image-110" title="google_docs_logo" src="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/google_docs_logo.png" alt="" width="231" height="218" /></a>Aujourd&#8217;hui nous allons parler un petit peu de Google Doc Spreadsheets et des possibilités qu&#8217;il donne.</p>
<p>Il est possible de faire une base de donnée en google doc spreadsheet&#8230; &laquo;&nbsp;Hein que quoi ?! on m&#8217;aurait caché des choses ?&nbsp;&raquo;</p>
<p>Yep yep, et c&#8217;est super simple. Bien entendu nous parlons d&#8217;une base de donnée locale utilisable uniquement dans notre document, nous ne pourrons pas la requêter facilement de l&#8217;extérieur.</p>
<p>Cette fonction est super utile pour gérer des plannings et connaitre approximativement le coût final sachant que chaque tâche peut être un type de travail différent.</p>
<p><span id="more-109"></span></p>
<h2>Pratique</h2>
<p>Tout d&#8217;abord nous allons nous créer une feuille de tableur toute simple récapitulant nos différents prix (faux les prix <img src='http://www.jeremy-trufier.net/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  ) :</p>
<div id="attachment_112" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/tarifs.jpg" rel="lightbox[109]"><img class="size-medium wp-image-112" title="Feuille Tarifs" src="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/tarifs-300x130.jpg" alt="Feuille Tarifs" width="300" height="130" /></a><p class="wp-caption-text">Feuille Tarifs</p></div>
<p>Puis maintenant notre planning de base, trois colonne Nom de la tache, Type de la tache correspondant à la référence dans la page Tarif, et la durée horaire de chaque tâche :</p>
<div id="attachment_113" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/planning1.jpg" rel="lightbox[109]"><img class="size-medium wp-image-113" title="Planning étape 1" src="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/planning1-300x183.jpg" alt="Planning étape 1" width="300" height="183" /></a><p class="wp-caption-text">Planning étape 1</p></div>
<p>A présent comme vous l&#8217;aurez deviné le but du jeu est de faire remplir la 4e colonne avec les bons montants en utilisant la feuille Tarifs.</p>
<p>Pour cela nous allons utiliser la fonction QUERY(). Le premier paramètre est la plage de donnée que nous voulons requêter, c&#8217;est donc ici la plage A:C (les collonnes A à C) de la page Tarifs, donc la plage : Tarifs!A2:C10 par exemple, mais il faut rajouter nos $ pour ne pas modifier ces valeurs lorsque nous allons répliquer la formule : <strong>Tarifs!$A$2:$C$10</strong></p>
<p>Le deuxième paramètre est notre requête, ici nous voulons récupérer le tarif horaire correspondant à la référence dans la colonne B de notre feuille Planning. Notre requête pour la tâche 1 va donc être :</p>
<blockquote>
<pre>SELECT B WHERE A=B2</pre>
</blockquote>
<p>Et oui mais petit problème, on mixe deux pages là, on veut bien récupérer le contenu de la colonne Tarifs!B lorsque Tarifs!A=Planning!B2, mais comment google spreadsheets saura que B2 fait partie de la feuille planning ???</p>
<p>Il nous suffit de concaténer :</p>
<blockquote>
<pre>CONCATENATE("SELECT B WHERE A='",B2,"'")</pre>
</blockquote>
<p>Notre requête finale sera donc :</p>
<blockquote>
<pre>=QUERY(Tarifs!$A$2:$C$10,CONCATENATE("SELECT B WHERE A='",B2,"'"))*C2</pre>
</blockquote>
<p>Vous remarquez le petit *C2 pour prendre en compte le nombre d&#8217;heures.</p>
<p>Maintenant appliquons la requête dans une cellule et dupliquons là dans les autres et cela nous donne :</p>
<div id="attachment_114" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/planning2.jpg" rel="lightbox[109]"><img class="size-medium wp-image-114" title="Feuille planning - Etape 2" src="http://www.jeremy-trufier.net/wp-content/uploads/2010/09/planning2-300x212.jpg" alt="Feuille planning - Etape 2" width="300" height="212" /></a><p class="wp-caption-text">Feuille planning - Etape 2</p></div>
<h2>Conclusion</h2>
<p>Vous avez maintenant appris à requêter en google spreadsheets, les possibilités sont impressionnantes et seulement une d&#8217;entre elle est survolée par cet article. J&#8217;avais cependant envie de vous la faire découvrir étant donné le gain de temps apporté.</p>
<p>Si vous voulez plus d&#8217;infos, je vous invite à consulter la page de google concernant ce langage de requêtage :<a href="http://code.google.com/intl/fr/apis/visualization/documentation/querylanguage.html" target="_blank"> http://code.google.com/intl/fr/apis/visualization/documentation/querylanguage.html</a></p>
<p>A bientôt !</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeremy-trufier.net/2010/09/23/google-doc-spreadsheets-requeter-une-table/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->