Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-06-2012
Avatar de DarkBlue
DarkBlue DarkBlue is offline
Miembro
 
Registrado: jun 2010
Posts: 105
Poder: 14
DarkBlue Va por buen camino
Talking Dropdown list excel delphi

Ahora estoy con la idea de poner dropdown list en excel pero a la hora de seleccionar sus valores me sale un error , lo que pasa es que no puedo acceder al dropdown list :S he visto los macros en excel y pone las siguentes propiedades


ActiveSheet.Shapes("Drop Down 2").Select
With Selection
.ListFillRange = "$B$4:$B$6"
.LinkedCell = "$C$4"
.DropDownLines = 8
.Display3DShading = False
End With

a lo que yo creo que debe de ser algo asi en delphi


Código Delphi [-]


procedure TForm5.Button2Click(Sender: TObject);
    var sheets,wb,xlapplication,ws:variant;
    listaencontrados:tstringlist;
    x,y:integer;
    z:extended;
begin
XLApplication:= CreateOleObject('Excel.Application');
XLApplication.WorkBooks.Open(FileName :='C:\'+'avalanch-vp1277-665-08'+'.xlsx', Password :='57-+@%*+090', ReadOnly := TRUE);
XLApplication.visible:=true;
 XLApplication.ActiveSheet.Unprotect('@%(05790¡$-');

    WB := XLApplication.ActiveWorkbook;
    sheets:=XLApplication.workbooks[1].Worksheets['hoja1'];
    sheets := XLApplication.Activesheet;
    y:=100;

    XLApplication.Range['a15','a15'].Value:='jk';
    XLApplication.Range['a16','a16'].Value:='jkff';
    XLApplication.Range['a17','a17'].Value:='jjhuk';




  for x:=0 to 10 do
    begin
   

    sheets.DropDowns.Add(483, 221.25+(x*15), 93, 15.75).Select;
    seleccion:= sheets.DropDowns.Add(483, 221.25+(x*15), 93, 15.75).Select;//ningun problema
    seleccion.ListFillRange['"$B$4:$B$6"'].select;//esto da error
    seleccion.ListFillRange.LinkedCell:= '"$C$4"';
  
    end;
  XLApplication.Activesheet.Shapes('Drop Down 1').Select;//esto me da error 

Gracias por su tiempo prometo estar pendiente de las publicaciones buen dia amigos!
__________________
Todo es Relativo
Responder Con Cita
  #2  
Antiguo 02-06-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por DarkBlue Ver Mensaje
Ahora estoy con la idea de poner dropdown list en excel pero a la hora de seleccionar sus valores me sale un error , lo que pasa es que no puedo acceder al dropdown list :S he visto los macros en excel y pone las siguentes propiedades
Hola, pero ¿qué problema tienes y cual es el error?
Responder Con Cita
  #3  
Antiguo 02-06-2012
Avatar de DarkBlue
DarkBlue DarkBlue is offline
Miembro
 
Registrado: jun 2010
Posts: 105
Poder: 14
DarkBlue Va por buen camino
pues simplmente me dice que no soporta ese metodo para ese objeto variant osea que le estoy diciendo mal como acceder a la propiedad o no estoy adivinando el metodo correcto mientras que el macro en excel me dice esto

with selection
.ListFillRange = "$B$4:$B$6"
.LinkedCell = "$C$4"
.DropDownLines = 8
.Display3DShading = False
end

yo trato de imitar eso en el ciclo es mas, ni siquiera me deja selecionar el dropdownlist con la siguinete linea

XLApplication.Activesheet.Shapes('Drop Down 1').Select me dice que no esta soportado tal metodo para el objeto olevariant

espero puedan ayudarme
__________________
Todo es Relativo
Responder Con Cita
  #4  
Antiguo 05-06-2012
Avatar de DarkBlue
DarkBlue DarkBlue is offline
Miembro
 
Registrado: jun 2010
Posts: 105
Poder: 14
DarkBlue Va por buen camino
bueno para todos los perdidos que lleguen a este "hilo" les voy a decir como lo solucione bueno ahi va de nuevo todo el codigo
Código Delphi [-]

procedure TForm5.Button2Click(Sender: TObject);
    var sheets,wb,xlapplication,ws,seleccion,uno:variant;
 
    x:integer;
    z:extended;
begin
XLApplication:= CreateOleObject('Excel.Application');
XLApplication.WorkBooks.Open(FileName :='C:\'+'avalanch-vp1277-665-08'+'.xlsx', Password :='57-+@%*+090', ReadOnly := TRUE);
XLApplication.visible:=true;
XLApplication.ActiveSheet.Unprotect('@%(05790¡$-');

    WB := XLApplication.ActiveWorkbook;
    sheets:=XLApplication.workbooks[1].Worksheets['hoja1'];
   

    y:=100;
    uno:=1;
    XLApplication.Range['a15','a15'].Value:='jk';
    XLApplication.Range['a16','a16'].Value:='jkff';
    XLApplication.Range['a17','a17'].Value:='jjhuk';

    for x:=0 to 10 do
    begin
    sheets.DropDowns.Add(483, 221.25+(x*15), 93, 15.75).Select;
    sheets.DropDowns.Add(483, 221.25+(x*15), 93, 15.75).Select;
    sheets.DropDowns.Add(422.25, 219.75+(x*15), 60.75, 15.75).Select;

    end;
    seleccion:=sheets.DropDowns('Drop Down 2'); {seleccion es una variable de tipo de dato variant entonces supuse que 
devolvia una referencia al objeto dropdown que queria  como estuve jugando con las propiedades de un objeto  
clase tExcelworksheet y mas o menos asi eran algunos metodos }
seleccion.listfillrange:= '$B$4:$B$6';{ya que tenia la referencia me fije en el macro de excel las propiedades que usaba con el dropdown list 
 hablaba de esta manera el codigo del macro
   ActiveSheet.Shapes("Drop Down 3").Select
    With Selection
        .ListFillRange = "$A$15:$A$17"
        .LinkedCell = ""
        .DropDownLines = 8
        .Display3DShading = False   }
mucha suerte espero que les sirva de algo y les ahorre tiempo
__________________
Todo es Relativo
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
list box delphi juaarias Varios 9 03-05-2011 04:58:58
Problema con el DropDown de DBLookUpComboBox NPIdea Conexión con bases de datos 4 14-06-2008 09:15:14
excel a delphi, como mostrar columnas de excel Vyckso Servers 2 13-08-2007 12:38:08
DropDown con TDBLookupComboBox AGAG4 Varios 1 28-09-2004 22:20:25
Menu DropDown en Boton lafirma Varios 8 11-08-2004 11:51:24


La franja horaria es GMT +2. Ahora son las 23:01:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi