
¿Copiar o cortar un control pierde sus eventos?
Sé que esto no es nada nuevo, pero lo sigo considerando un error. ¿Por qué si corto un control en un formulario para pegarlo en el mismo formulario en otro lugar, perdemos todos los eventos asociados? El código permanece en el módulo Formulario (VBE), solo se pierde el valor de la propiedad de evento de (Procedimiento de evento).
Sin embargo, las macro incorporadas no se pierden.
Tampoco se pierden las expresiones.
¡Esto es especialmente molesto cuando se mueven controles entre un formulario y un control de pestaña!
Esto solo ocurre con los procedimientos de eventos de VBA/VBE. El código permanece, pero debe abrir manualmente la hoja de propiedades y volver a ingresar (Procedimiento de evento) en cada una de las propiedades de evento del control correspondiente. No es el fin del mundo, pero es fácil pasarlo por alto, olvidar un evento… es fácil tener problemas y preguntarse por qué las cosas no funcionan como deberían.
Lo mismo ocurre con una simple operación Copiar/Pegar: los procedimientos de eventos se pierden. ¿Por qué? Son parte del control, al igual que las macros o las expresiones. ¿Por qué no se conservan?
Para mí, esta simplemente no es la experiencia de usuario deseada que esperaba ni deseo brindar a mis usuarios y me sorprende que después de todo este tiempo este problema nunca se haya abordado.