<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>list-box &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/list-box/</link>
	<description>Feed of posts on WordPress.com tagged "list-box"</description>
	<pubDate>Tue, 14 Oct 2008 11:57:03 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Como agregar ("todos") a un cuadro combinado]]></title>
<link>http://lumbanico.wordpress.com/?p=205</link>
<pubDate>Fri, 11 Apr 2008 06:30:18 +0000</pubDate>
<dc:creator>lumbanico</dc:creator>
<guid>http://lumbanico.es.wordpress.com/2008/04/11/como-agregar-todos-a-un-cuadro-combinado-o-un-control-de-cuadro-de-lista/</guid>
<description><![CDATA[Mediante la siguiente función se añade el valor &#8220;(todos)&#8221; a un cuadro combinado o un c]]></description>
<content:encoded><![CDATA[<p>Mediante la siguiente función se añade el valor "(todos)" a un cuadro combinado o un cuadro de lista. Tras crear el elemento que contiene los datos que queremos mostrar hay que cambiar la propiedad "RowSourceType del valor "Table/Quert" a "AddAllToList", y establece el valor de la propiedad Tag del cuadro combinado o del cuadro de lista el número de la comna en la que se quiere que aparezca el valor "(todos)".</p>
<p>La función también permite que tras el número de la columna indicado en la propiedad Tag se puede añadir un punto y coma (;) y el texto que quieras que aparezca y que sea distinto de "(todos)" (por ejemplo: valor de Tag="2;&#60;ninguno&#62;". Muestra el valor "ninguno" en la segunda columna de la lista).</p>
<p><!--more--></p>
<p>El ejemplo muestra también como crear una consulta UNION , se puede utilizar la función o la consulta de unión para agregar ("todos") como la primera fila de cualquier control existente de cuadro de cuadro combinado o lista de cuadro combinado en una aplicación de Microsoft Access.</p>
<p><span style="color:#0000ff;">Function AddAllToList (C As Control, ID As Long, Row As Long, Col As Long, Code As Integer) As Variant<br />
Static DB As Database, RS As Recordset<br />
Static DISPLAYID As Long<br />
Static DISPLAYCOL As Integer<br />
Static DISPLAYTEXT As String<br />
Dim Semicolon As Integer<br />
On Error GoTo Err_AddAllToList<br />
Select Case Code<br />
Case LB_INITIALIZE<br />
<span style="color:#008000;"> 'Comprueba si la función se está utilizando.</span><br />
If DISPLAYID &#60;&#62; 0 Then<br />
MsgBox "AddAllToList está sienda utilizado con otro control!"<br />
AddAllToList = False<br />
Exit Function<br />
End If</span></p>
<p><span style="color:#0000ff;"><span style="color:#008000;">' Parse the display column and display text from the Tag property.</span><br />
DISPLAYCOL = 1<br />
DISPLAYTEXT = "(All)"<br />
If Not IsNull(C.Tag) Then<br />
SemiColon = InStr(C.Tag, ";")<br />
If SemiColon = 0 Then<br />
DISPLAYCOL = Val(C.Tag)<br />
Else<br />
DISPLAYCOL = Val(Left(C.Tag, SemiColon - 1))<br />
DISPLAYTEXT = Mid(C.Tag, SemiColon + 1)<br />
End If<br />
End If</span></p>
<p><span style="color:#0000ff;"><span style="color:#008000;">' Open the recordset defined in the RowSource property.</span><br />
Set DB = DBEngine.Workspaces(0).Databases(0)<br />
Set RS = DB.OpenRecordset(C.RowSource, DB_OPEN_SNAPSHOT)</span></p>
<p><span style="color:#0000ff;"><span style="color:#008000;">' Record and return the ID for this function.</span><br />
DISPLAYID = Timer<br />
AddAllToList = DISPLAYID</span></p>
<p><span style="color:#0000ff;">Case LB_OPEN<br />
AddAllToList = DISPLAYID</span></p>
<p><span style="color:#0000ff;">Case LB_GETROWCOUNT<br />
<span style="color:#008000;"> ' Return the number of rows in the recordset.</span><br />
RS.MoveLast<br />
AddAllToList = RS.RecordCount + 1</span></p>
<p><span style="color:#0000ff;">Case LB_GETCOLUMNCOUNT<br />
<span style="color:#008000;"> ' Return the number of fields (columns) in the recordset.</span><br />
AddAllToList = RS.Fields.Count</span></p>
<p><span style="color:#0000ff;">Case LB_GETCOLUMNWIDTH<br />
AddAllToList = -1</span></p>
<p><span style="color:#0000ff;">Case LB_GETVALUE<br />
<span style="color:#008000;"> ' Are you requesting the first row?</span><br />
If Row = 0 Then<br />
<span style="color:#008000;"> ' Should the column display "(All)"?</span><br />
If Col = DISPLAYCOL - 1 Then<br />
<span style="color:#008000;"> ' If so, return "(All)."</span><br />
AddAllToList = DISPLAYTEXT<br />
Else<br />
<span style="color:#008080;"> ' Otherwise, return NULL.</span><br />
AddAllToList = Null<br />
End If<br />
Else<span style="color:#008080;"><br />
' Grab the record and field for the specified row/column.</span><br />
RS.MoveFirst<br />
RS.Move Row - 1<br />
AddAllToList = RS(Col)<br />
End If<br />
Case LB_END<br />
DISPLAYID = 0<br />
RS.Close<br />
End Select</span></p>
<p><span style="color:#0000ff;">Bye_AddAllToList:<br />
Exit Function</span></p>
<p><span style="color:#0000ff;">Err_AddAllToList:<br />
Beep: MsgBox Error$, 16, "AddAllToList"<br />
AddAllToList = False<br />
Resume Bye_AddAllToList<br />
End Function</span></p>
<p>Fuente: <a href="http://support.microsoft.com/?kbid=210290">www.support.microsoft.com</a></p>
]]></content:encoded>
</item>

</channel>
</rss>
