UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERÍA INDUSTRIAL
GESTIÓN DEL APROVISIONAMIENTO DE
ELECTRICIDAD DE UNA EMPRESA
INDUSTRIAL EN UN ENTORNO DE
MERCADO
PABLO BARRÓN SISO
MADRID, Septiembre de 2008
Autorizada la entrega del proyecto al alumno:
D. Pablo Barrón Siso
EL DIRECTOR DEL PROYECTO
D. Juan Temboury Molina
Fdo: Fecha:
Vº Bº del Coordinador de Proyectos
D. Tomás Gómez San Román
Fdo: Fecha:
Resumen iii
Resumen
GESTIÓN DEL APROVISIONAMIENTO DE ELECTRICIDAD DE
UNA EMPRESA INDUSTRIAL EN UN ENTORNO DE MERCADO
Autor: Barrón Siso, Pablo.
Director: Temboury Molina, Juan.
Entidad Colaboradora: ICAI ! Universidad Pontificia Comillas.
RESUMEN DEL PROYECTO
El objetivo del proyecto es entender el funcionamiento del mercado eléctrico
español para, desde la perspectiva de un consumidor industrial, saber calcular los costes
relativos al aprovisionamiento de la electricidad que le es necesaria.
Para ello se analiza la regulación y formación de precios en el mercado desde el
punto de vista de un gran consumidor industrial.
A través de una breve introducción, se entiende cómo ha sido la evolución del sector
eléctrico en España y cómo es la estructura y regulación de las distintas actividades que
lo componen, definidas en la Ley 54/1997 del sector eléctrico.
Tras esta reseña, se enuncian y explican todas la opciones de suministro mayorista
existentes (mercado spot, mercado a plazo, contratos bilaterales, subastas virtuales de
capacidad) y las implicaciones de los mercados de operación (regulación secundaria,
regulación terciaria y gestión de los desvíos).
A continuación, una vez que se conocen y comprenden las opciones de suministro
de energía, se determinan los demás términos que dan lugar al precio final de la energía.
Se "#$%&'()*+,+-.,/', 0+-, 1+#)%+-,(/,+22/-$3, 0$-, 1)"$-,(/,/4&)"$-,(/,5/()(+, 6, -&,2$-1/3,
5/2+')-5$-, (/, 7+#+'1.+, (/, -&5)')-1#$8, 2$5$, 0+, 7+#+'1.+, (/, "$1/'2)+3, 0$-, #/2+#7$-, /,
impuestos (impuesto de la electricidad y moratoria nuclear) y, los servicios de gestión
de la demanda, dentro de los cuales, se analiza el servicio de interrumpibilidad. Para
todo esto fue necesario hacer un estudio de la legislación vigente, actualizando en todo
iv
momento aquellos puntos sobre los que se fueron introduciendo modificaciones en la
ley durante los meses en los que duró el proyecto.
También se trata, con un breve ejemplo, cómo se puede determinar la curva forward
de carga de una instalación a partir del tratamiento de datos históricos. Asimismo se
explica el funcionamiento de una de las herramientas desarrolladas, con la que se puede
obtener la curva forward de precios. Con ambas curvas forward es posible estimar el
"#/2)$,%)'+0,(/,0+,/'/#7.+,,"+#+,&',9%&1&#$:;
Cuando se consiguió tener una visión clara de la regulación del mercado y de la
formación de precios desde el punto de vista de un consumidor industrial se empezó a
plantear la resolución de casos prácticos. Gracias a las prácticas que pude realizar en
PRAXAIR con mi director de proyecto nos dimos cuenta de que era necesario el
desarrollar una herramienta con la que automatizar los cálculos. Lo que empezó como
una pequeña hoja de cálculo con algunas macros, terminó convirtiéndose en una
herramienta capaz de, a partir de la curva de carga y una serie de datos que son pedidos
mediante cuadros de diálogo, determinar las tarifas de acceso, garantía de potencia e
interrumpibilidad. También se desarrolló una herramienta para la obtención de la curva
forward de precios. Ambas herramientas se analizan con pequeños ejemplos en el
último capítulo del proyecto. Además se incluye el código de lo programado.
Summary v
Summary
MANAGEMENT OF THE ELECTRICAL SUPPLY OF AN
INDUSTRIAL COMPANY IN THE MARKET.
Author: Barrón Siso, Pablo.
Director: Temboury Molina, Juan.
Organization: ICAI ! Universidad Pontificia Comillas.
PROJECT SUMMARY
The final aim of the project is to understand the way that the Spanish electricity
market works, in order to be able to calculate costs for supplying electricity to an
industrial consumer.
Regulation and price formation in the market is examined from an industrial
consumer point of view.
Throug a brief introduction, it is understood how the evolution of the electricity
sector has been in Spain and how the structure and regulation of all the activities that
form part of it are. Those activities are defined in the Law 54/1997.
After this review, the available wholesale supply options are explained (pool, market
futures, bilateral contracts, virtual capacity auctions) and the implications of the
operation market (secondary regulation, tertiary regulation and turnout management).
Once the electrical supply options are known and understood, the rest of the terms
that lead to the final price of the electricity are determined. The project also studies
access charges; the measuring equipment and its cost; guarantee power and the
electrical taxes. For all that it was necesary to make a study of the existing laws,
upgrading all those points that were changed, by the new laws, during the time in which
the project lasted.
vi
It is explained how to determine the forward load curve of a factory by making some
calculations over its historical data.. It is also described how a program for calculating
the forward prices curve works. By using both curves it is possible to estimate the final
price o%,1</,/'/#76,)',+,9%&1&#/:;
When all the regulation was known and the way prices were formed was
understrood, it was necessary to start solving some typical cases. After having to work
at PRAXAIR my director and I realized that it was necessary to develop a program that
let us make all our calculations. Truth to be told, I never thought that what started with a
macro would be such an useful tool. It may easily calculate, from the load curve, the
access charges, the guarantee power and so on. A tool for calculating the forward prices
tool was also developed. Both tools are analysed at the end of this project.
Índice vii
Índice
1 INTRODUCCIÓN AL MERCADO ELÉCTRICO ESPAÑOL ..................................................2
1.1 Breve reseña histórica. Del mercado regulado al liberalizado.................... 2
1.2 Características del sistema eléctrico Español. ............................................ 13
1.3 Organización de las actividades eléctricas. ................................................ 23
1.3.1 Actividades reguladas. Transporte y distribución. 25
1.3.2 Actividades liberalizadas. Generación y comercialización 31
1.3.3 Legislación básica. Compendio de la regulación aplicable 40
2 FORMACIÓN DE PRECIOS EN RÉGIMEN DE MERCADO .................................................1
2.1 Introducción .................................................................................................... 1
2.2 Descripción detallada del mercado de producción .................................... 10
2.2.1 Mercado de producción 10
2.2.1.1. Ofertas y casación en el mercado diario, ofertas de venta................................... 10
2.2.1.2. Contratos bilaterales ............................................................................................... 17
2.2.1.3. Contratos a plazo..................................................................................................... 17
2.2.1.4. Subastas de capacidad ............................................................................................ 23
2.2.2 Los mercados de operación gestionados por REE 26
2.2.2.1 Regulación secundaria............................................................................................. 27
2.2.2.2 Regulación terciaria ................................................................................................. 30
2.2.2.3 Gestión de desvíos ................................................................................................... 32
2.3 Accesos. Peajes según el R.D. 1164/2001..................................................... 36
2.3.1. Tipos de tarifa. Horas tipo. Parámetros 37
2.4 Medida............................................................................................................ 53
2.4.1 Equipos de medida 54
2.4.2 Coste 59
2.5 Coste regulado de garantía de potencia ...................................................... 60
Índice viii
2.6 Recargos e impuestos .................................................................................... 65
2.6.1 Impuesto de la electricidad 65
2.6.2 Moratoria nuclear 65
3 SERVICIOS DE GESTIÓN DE DEMANDA ..............................................................................67
3.1 Nuevas disposiciones aprobadas ................................................................. 68
3.1 Ejemplos de utilización y valoración económica ........................................ 75
3.1.1 Modalidad A 76
3.1.2 Modalidad B 78
4 ESTIMACIÓN DE CURVAS DE CARGA DE CONSUMOS. TRATAMIENTO DE
DATOS HISTÓRICOS Y TIPIFICACIÓN DE CURVAS FUTURAS....................................82
5 CASOS PRÁCTICOS ........................................................................................................................
1 Introducción al mercado eléctrico español 2
1 Introducción al mercado eléctrico español
1.1 Breve reseña histórica. Del mercado regulado al liberalizado
Antecedentes
Pese a los pocos más de cien años de historia del sector eléctrico en España
puede considerarse una historia corta pero sin duda intensa.
España no permaneció ajena a la rápida cadena de acontecimientos que se
produjeron en el siglo XIX y que hicieron posible el desarrollo de las
aplicaciones de la electricidad.
El año 1852 tiene, en este sentido, una especial significación. En Barcelona y
en Madrid tienen lugar las primeras experiencias realmente prácticas de
aprovechamiento de la electricidad. La iluminación de una botica o del
Congreso de los Diputados son algunos de los ejemplos de aplicación de la
electricidad.
Aunque ya en 1858 un Real Decreto obligó a la inclusión de una nueva
!"#$%!&'(!)"*+(,)-./0#1!1#*%,")2,)0!),0,1&(#1#2!2)3)2,)0!)0'45),%),0)/(*$(!6!)2,)
estudios de la Escuela Superior de Ingenieros Industriales, la energía eléctrica se
encontraba todavía en una fase de experimentación y eran frecuentes las
exhibiciones y demostraciones de alumbrado eléctrico de cara al público.
Un acontecimiento de importantes repercusiones para el desarrollo de las
aplicaciones de la electricidad en España tuvo lugar en 1873. Se celebraba en
dicho año la Exposición Universal de Viena y a ella acudió Ramón Menjarrés
Bofarull, director de la Escuela de Ingenieros Industriales de Barcelona. En ella,
el profesor quedó impresionado con las posibilidades que ofrecía la máquina
electromagnética de corriente continua, diseñada por Zénobe Gramme. Podía
no sólo usarse como generador sino que tenía un carácter reversible, usándose
1 Introducción al mercado eléctrico español 3
también como motor. Es por eso que la Escuela de Ingenieros Industriales de
Barcelona importó al año siguiente, gracias a la ayuda de los señores Dalmau,
'%!) /,7',8!) 2#%!6*) -9(!66,5) /!(!) 0!) :;&,2(!) 2,) <="#1!) >%2'"&(#!0) 2,) 0!)
escuela.
Poco tiempo después, en 1875, se dan los primeros pasos en la industria
eléctrica con la construcción de la primera central eléctrica en España por Xifré
y Dalmau en Barcelona. La producción eléctrica de dicha central fue destinada
al alumbrado de varios establecimientos y talleres. Tenía cuatro máquinas
Gramme de 200 voltamperios movidas por motores de gas de 50 caballos. Los
buenos resultados obtenidos hasta ese momento por Dalmau y Xifré
aconsejaron la constitución, en 1881, de la primera empresa eléctrica del país: la
Sociedad Española de Electricidad. Su fundación, con 20 millones de pesetas de
capital, es llevada a cabo por Francisco Dalmau y Faura y su hijo.
En este año también se fabrican las primeras máquinas Gramme en España.
El desarrollo de la electricidad, aun dentro todavía de unos esquemas y
dimensiones un tanto artesanales, comienza a ser tan rápido que en 1885 se
publica ya el primer Real Decreto regulador de instalaciones eléctricas. Este
Real Decreto tenía por objeto la regulación de la expansión del alumbrado
eléctrico, tanto público como en industrias y locales.
Desde esta época hasta el comienzo del siglo se produce un importante
desarrollo del sector. Un ejemplo de este desarrollo pueden constituirlo las
ciudades de Madrid, Barcelona, Valencia o Bilbao donde se va imponiendo el
alumbrado eléctrico con rapidez. Sin embargo, el hecho de que la electricidad
producida hasta comienzos del siglo XX fuese en forma de corriente continua
suponía una importante barrera técnica para el desarrollo del sector eléctrico
pues no era posible su transporte a gran distancia. En otras palabras, las
centrales eléctricas debían ser construidas en las proximidades de los centros de
consumo, generalmente las ciudades más importantes.
1 Introducción al mercado eléctrico español 4
A pesar del importante obstáculo que suponía la imposibilidad del
transporte de la electricidad a largas distancias, fue tal el desarrollo del sector
que en 1901 el Ministerio de Fomento ya se encargó de la elaboración de la
primera estadística oficial del mismo. Existían por aquel entonces 861 centrales
con una potencia total de 78 MW.
La generalización de la corriente alterna puso fin a la era artesanal de la
producción y distribución de electricidad y facilitó el desarrollo a gran escala
del sector. Así, en 1909, desde la central de Molinar en el río Jucar hasta Madrid,
se construye la primera gran línea eléctrica que recorría 240 km a una tensión
de 66kV con lo que se convierte en el transporte de mayor extensión y longitud
de Europa por aquel entonces.
Evolución de la industria eléctrica en España. De 1880 a 1930.
Desde la puesta en marcha de la primera central eléctrica española para
servicio comercial en 1881, la industria eléctrica ha recorrido en España un largo
camino. En aquellas fechas, la mayor parte de las instalaciones existentes eran
aprovechamientos hidroeléctricos o motores térmic*") 2,) -$!") /*+(,5?) /!(!)
suministro de energía a pequeñas industrias o para alumbrado de centros
urbanos.
En la primera década del siglo XX, la industria española se encuentra en
plena expansión por todo el país, principalmente en las grandes ciudades. La
generación de corriente alterna, la utilización de alta tensión para la transmisión
de la corriente y el perfeccionamiento del motor eléctrico hacen que la
transformación en el sector en esta década sea importante. Es también a
principios del siglo cuando se constituyen un gran número de empresas
eléctricas.
La corriente alterna permitió el desarrollo de las primeras grandes centrales
hidroeléctricas españolas en la segunda década del siglo XX. Su construcción
1 Introducción al mercado eléctrico español 5
exigía grandes esfuerzos económicos y financieros además de contar con
contratos de venta de su producción para asegurar su rentabilidad. Esto dio
lugar a un cambio en las dimensiones de las empresas. Las creadas a principios
del siglo XX se consolidan, se crean otras nuevas y el sector eléctrico se
configura en grandes grupos. Las cinco mayores empresas controlaban más del
50 por ciento de la potencia instalada en 1930 y las 10 primeras el 70 por ciento.
En estos 30 años, el sector había multiplicado por diez su capacidad.
Desde 1930 hasta 1940.
Desde principios de siglo hasta el inicio de la guerra de 1936 1939 la
potencia eléctrica instalada se desarrolló a un ritmo apreciable y constante,
creciendo a una tasa media acumulativa del 8,8% anual. La mayor parte del
desarrollo se debió a la expansión del parque hidroeléctrico.
1 Introducción al mercado eléctrico español 6
La situación del sector eléctrico al iniciarse el año 1936 se caracterizaba por
un exceso de oferta de electricidad frente a una demanda que, aunque crecía de
manera constante, se mantenía aún a niveles bajos, como correspondía al débil
desarrollo industrial del país.
La guerra civil cambió bruscamente este panorama. El parque eléctrico se
encontró con graves dificultades para garantizar la cobertura de la creciente
demanda. Algunas instalaciones habían quedado destruidas o dañadas por el
conflicto y el bloqueo económico internacional impedía la renovación de los
equipos necesarios.
Como resultado de todo este conjunto de circunstancias, el crecimiento de la
potencia instalada fue de tan sólo un 1,4% anual en el periodo 1940 @ 1944. Esta
situación se vio agravada con la sequía de los años 1944 y 1945, la más severa
que había sufrido el país en mucho tiempo.
En definitiva, en apenas diez años, la situación de claro exceso de oferta se
había invertido completamente.
Ante la dificultad de construir nuevas centrales de gran potencia en el
tiempo que exigía la evolución de la demanda, se impuso la necesidad de
obtener de las instalaciones ya existentes el mayor y más eficaz rendimiento
posible. Por ello, las principales empresas eléctricas entonces existentes
acordaron agruparse en una nueva sociedad @ Unidad Eléctrica S.A. (UNESA),
creada en el mes de agosto de 1944 @ para conseguir una explotación
coordinada de los recursos eléctricos entonces disponibles y promover el
desarrollo de la red eléctrica española, a fin de que la interconexión de todas las
zonas y centros de producción de electricidad permitiera la coordinación de la
explotación del sistema eléctrico español. Esto supuso el inicio de la explotación
del conjunto del sistema, de modo que las instalaciones de cada empresa se
pusieran al servicio del abastecimiento de la demanda del país.
1 Introducción al mercado eléctrico español 7
Periodo 1940 !1970.
En el período de treinta años que comienza en 1940, pueden considerarse
tres etapas de características distintas. La primera, que comprende desde 1944
A!"&!) BCDE?) ",) 1!(!1&,(#4!) /*() ,0) 6*2,0*) !'&;(7'#1*) 2,) %',"&(!) ,1*%*6=!F) 0!)
segunda, que comprende de 1953 hasta 1959, en donde hay una mayor
0#+,(!0#4!1#G%) 3) ,"&!+#0#2!2) 2,0) 6!(1*) ,1*%G6#1*F) 3?) H#%!06,%&,?) 0*") !8*") 2,
fuerte desarrollo de nuestra economía, que llegan hasta 1973, con el inicio de la
primera crisis energética.
Coincidiendo con la etapa de estabilidad del marco económico, en 1951 y
1953 se aprueba y entra en vigor un nuevo sistema de tarifas, que establecía la
unificación de precios de la electricidad para todo el territorio español. Esto
exigió la implantación de compensaciones, creándose a este fin la Oficina
Liquidadora de Energía (OFICO), que ha pervivido hasta nuestros días y cuyas
funciones han sido asumidas en la actualidad por la CNE y el Instituto del
carbón.
Una vez que la economía empezó a mostrar síntomas de recuperación y se
levantó el bloqueo internacional, fue posible emprender la construcción de
grandes centrales hidroeléctricas y, más adelante, de centrales termoeléctricas
de carbón nacional y fuelóleo. Además, en 1968, España se incorporó al
desarrollo electronuclear.
También se desarrolló la completa interconexión de los sistemas de las
diferentes empresas y se construyeron las primeras líneas de transporte a 380
kV. La demanda creció a tasas muy elevadas. En 1973 la potencia instalada
superó los 23.000 MW y la red de transporte de tensiones superiores a 110 kV
tenía una longitud de más de 40.000 km.
1 Introducción al mercado eléctrico español 8
Evolución de la potencia del parque eléctrico de España (MW)
Termoeléctrica
Año Hidroeléctrica Clásica Nuclear Total
1940 1.350 381 1.731
1950 1.906 647 2.553
1960 4.600 1.967 6.567
1970 10.883 6.888 153 17.924
Periodo 1970 ! 1980.
Las crisis energéticas de 1973 y 1979, que dominaron el panorama
internacional a lo largo de los años setenta, provocaron un cambio en la
orientación de las políticas energéticas de la mayor parte de los países
industrializados. La reducción de la dependencia respecto del petróleo
importado; el aprovechamiento preferente de los recursos energéticos
%!1#*%!0,"F)'%!)6!3*()I!(#,2!2)2,)H',%&,")2,),%,($=!)3)0!)#%I,"&#$!1#G%)"*+(,)
las nuevas energías y nuevas tecnologías energéticas, se convirtieron en
objetivos comunes de dichas políticas. En España, esta tendencia se vio reflejada
en los Planes Energéticos Nacionales1 de 1979 y 1983. De esta forma, y por lo
que al sector eléctrico se refiere, en la primera mitad de los años ochenta se
asistió a un profundo proceso de sustitución de la utilización de derivados del
petróleo en la producción de electricidad, por el empleo del carbón nacional e
1 Plan Energético Nacional (PEN). Documento elaborado por el Gobierno y aprobado por el
Parlamento, en el que se concretan los objetivos de la política energética española y las medidas necesarias
para conseguirlos.
1 Introducción al mercado eléctrico español 9
importado y la energía nuclear, así como un mayor aprovechamiento del
parque hidroeléctrico
La sustitución del petróleo por otras fuentes energéticas, la racionalización
del uso de la energía y la aplicación de una política de tarifas que trasladase las
variaciones de los precios internacionales del petróleo al consumidor fueron los
pilares básicos de la política energética en España durante la crisis.
Periodo 1980 ! 1990.
El cambio político de 1982 y la presión social de la minería, llevó al Gobierno
del PSOE, a dar un giro en la política energética en tres ámbitos: acciones
dirigidas a adecuar a los consumos eléctricos más moderados la capacidad del
,7'#/*),0J1&(#1*F)!1tuaciones dirigidas a reordenar las empresas eléctricas, tanto
en lo que se refiere a sus activos como a sus mercados, y propuestas orientadas
a establecer un sistema de retribución más estable y transparente. Además, con
su llegada al poder, se suspendieron los ambiciosos programas de energía
nuclear ya que la presión social había hecho incluir esta suspensión en el
programa electoral de este partido.
Como consecuencia de la política energética del nuevo Gobierno, en 1984 se
aprobó un nuevo Plan Energético Nacional en el que se revisaba la planificación
energética del sector hasta el año 1992 y se establecía la moratoria nuclear2. Este
2 Se paran cinco grupos nucleares en construcción, alguno de los cuales se encontraban próximos a su
entrada en servicio, por lo que los titulares de los proyectos que se paralizan reciben una compensación
por las inversiones realizadas y el coste de su financiación, mediante la afectación a ese fin de un
porcentaje de la facturación por venta de energía a los usuarios.
El plazo durante el que esa moratoria debería permitir recuperar las inversiones realizadas a 25 años a
partir de 1995, es decir, hasta el año 2020.
1 Introducción al mercado eléctrico español 10
Plan Energético marcaba los tres principios básicos que deberían regir el sector
eléctrico nacional: planificación a medio y largo plazo de las instalaciones,
explotación unificada de los medios de producción y transporte y un sistema de
percepción de ingresos que garantizase la estabilidad financiera no sólo para el
conjunto del sector sino para cada una de las empresas que lo conformaban.
Debe comprenderse así mismo que los elevados tipos de interés de la época
junto a los continuos retrasos en la construcción de los grupos nucleares, había
dejado a algunas empresas al borde de la quiebra.
Con relación al último punto y como colofón de un conjunto de medidas
sucesivas destinadas a conseguir equilibrio financiero de las empresas, se
publica el RD 1538/1987, que determina la metodología de cálculo de la tarifa
eléctrica de las empresas gestoras del servicio con el objetivo de proporcionar
un marco de referencia estable referido al sistema de ingresos de las empresas
que suministran energía eléctrica.
Este Real Decreto, junto con sus normas de desarrollo, constituyó un cuerpo
(,$'0!&*(#*)1*%*1#2*)1*6*)-K!(1*)L,$!0)M"&!+0,5?)7',)2,finió de forma precisa
la regulación del sector eléctrico durante la década 1988 @ 1997 y, en especial,
todos aquellos aspectos que tenían incidencia en el sistema de ingresos de las
empresas eléctricas. Tenía por objeto la determinación de la tarifa eléctrica en
condiciones de mínimo coste y asegurar la retribución de las inversiones con el
concepto de coste estándar3.
Introdujo modificaciones regulatorias muy importantes para su época, que
han servido de ejemplo y modelo a reguladores de otros países que optaron por
sistemas retributivos de costes. Aunque la liberalización del sector, tal y como la
3 Coste estándar: es una referencia de coste de las actividades que tiene en cuenta sus características
tecnológicas para fijar los parámetros de su retribución, en base a estudios técnicos y económicos.
1 Introducción al mercado eléctrico español 11
conocemos hoy, no era el objeto último, este marco hizo posible el camino
posterior y abrió mentes para los cambios que se producirían más adelante.
En el año 1985 se crea Red Eléctrica de España, lo que supone la
nacionalización de la red de transporte y la instauración del modelo de los
medios de producción con independencia que quien fuera su propietario, en
función del coste mínimo variable.
Evolución de la potencia del parque eléctrico de España (MW)
Termoeléctrica
Año Hidroeléctrica Clásica Nuclear Total
1980 13.557 16.447 1.120 31.144
1990 16.642 21.370 7.364 45.376
Desde 1990 hasta 1998. Del mercado regulado al liberalizado.
Un año más tarde, la entrada de España en la CE trajo consigo el
compromiso de la aceptación y la adaptación de nuestro modelo económico e
industrial al dominante en Europa y la adopción de normas para la creación de
un Mercado Único Europeo. En esta línea, en 1996, el Consejo de la Unión
Europea aprobó la Directiva sobre Normas Comunes para el Mercado Interior
de Electricidad. Esta Directiva, junto con otras normativas posteriores, fijaron
los objetivos y criterios de liberalización e introducción de la competencia, a los
cuales los países comunitarios, entre ellos España, han ido adaptando sus
legislaciones eléctricas.
No obstante, España que contaba con una madurez regulatoria fruto entre
otras cosas de las características del tejido empresarial se adelantó a los cambios
propuestos y ya en 1994 promulgó la Ley XX794 que introduce la competencia
1 Introducción al mercado eléctrico español 12
al Sistema eléctrico. Esta Ley, sin embargo no llegó a aplicarse pues el cambio
político de 1996 forzó un nuevo pacto entre el gobierno y las empresas
eléctricas. Así en ese mismo año el ministerio de industria y las empresas
,0J1&(#1!")H#(6!%),0))-N(*&*1*0*)/!(!),0),"&!+0,1#6#,%&*)2,)'%!)%',I!)(,$'0!1#G%)
2,0)"#"&,6!),0J1&(#1*)%!1#*%!05O)P,),"&!+0,1,%),%)J0)0!")+!",")*/,(!&#I!")7',)A!%)
de regir en el funcionamiento del sistema eléctrico mediante la liberalización
del mercado. Nace así la Ley 54/1997. Esta ley representa una transformación
absoluta del sector eléctrico: -L!)/(,",%&,)0,3)",)!"#,%&!),%),0)1*%I,%1#6#,%&*)2,)
que garantizar el suministro eléctrico, su calidad y su coste no requiere de más
#%&,(I,%1#G%),"&!&!0)7',)0!)2,)0!)/(*/#!)(,$'0!1#G%),"/,1=H#1!5O
El desarrollo práctico de las medidas contenidas en la nueva Ley suponía
pasar de un sistema fuertemente intervenido en la fijación de precios y las
decisiones de planificación, por los poderes públicos a un sistema en el que las
actividades eléctricas se realizarían sobre la base de criterios de mercado, sin
otras limitaciones de producción y comercialización, fundamentales que las que
impongan los factores técnicos, ambientales o económicos.
Se mantienen regulados el transporte y la distribución debido a que
presentan características de monopolios naturales4, mientras que se liberalizan
la generación y la comercialización.
En el año 2003 se llega a la elegibilidad total del mercado, pudiendo todos
los clientes elegir a su suministrador de electricidad.
4 Monopolio natural. Es un caso particular de monopolio en el cual una empresa puede producir toda
la producción del mercado con un coste menor que si hubiera varias empresas compitiendo.
1 Introducción al mercado eléctrico español 13
Evolución de la potencia del parque eléctrico de España (MW)
Termoeléctrica
Año Hidroeléctrica Clásica Nuclear Total
2000 20.117 28.144 7.798 56.059
2003 24.712 33.830 7.896 66.438
2006 31.602 38.223 7.728 77.553
‐ La potencia hidroeléctrica incluye a la eólica y a la solar.
‐ La potencia termoeléctrica clásica incluye la correspondiente a las
instalaciones térmicas de Régimen Especial.
‐
1.2 Características del sistema eléctrico Español.
Introducción. Un sistema eléctrico es un sistema integrado que permite que
la energía eléctrica se produzca, se transporte y se distribuya a los usuarios con
eficiencia, con calidad y seguridad en todo momento.
Conviene recordar cuáles son las características de la electricidad, aquellas
que justifican su carácter sistémico. La electricidad no es almacenable en la
práctica. Aunque sea posible hacerlo en baterías o condensadores o mediante
bombeos hidráulicos, su precio, rendimiento y dificultad de manejo convierten
esta posibilidad en impracticable cuando se manejan grandes cantidades de
energía. Por lo tanto, la electricidad debe producirse y transportarse en el
mismo instante en el que es consumida, dando lugar a interesar economías de
escala y de integración. La agregación, no obstante, provoca que los sistemas
eléctricos sean sistemas dinámicos de gran complejidad y dimensión. En todo
instante ese enorme sistema dinámico debe mantener el equilibrio entre
1 Introducción al mercado eléctrico español 14
generación y demanda y el fallo de cualquier elemento puede provocar
perturbaciones que se transmiten a todo el sistema casi instantáneamente. Esto
resulta determinante en la estructura, operación y planificación de los sistemas
de energía eléctrica. Al mismo tiempo, la electricidad presenta otra
/,1'0#!(#2!2O)Q*)/',2,)",() &(!"0!2!2!),%) H*(6!)2,)-/!7',&,"5)!) &(!IJ")2,)'%)
camino predefinido. Se transporta a través de redes malladas, en las que no se
puede elegir el recorrido. Éste depende de las leyes de Kirchhoff que reparte las
corrientes en función de las impedancias de las líneas y los otros elementos que
constituyen las vías por las que circula la electricidad.
De acuerdo a lo señalado al comienzo de este apartado, el sistema eléctrico
tiene como cometido facilitar la integración de la producción, transformar o
convertir esa electricidad a una tensión mayor que sea propicia para el
transporte a larga distancia, volver a transformar la energía a menor tensión
para que pueda ser distribuida en las cercanías de los centros de consumo, y
finalmente ponerla a disposición de los consumidores para su utilización.
La generación, transporte y distribución de electricidad están condicionados
por el hecho de que debe existir ese equilibrio instantáneo y permanente
R-,7'#0#+(#*)2#%;6#1*5S),%&(,)$,%,(!ción y consumo debido a la imposibilidad
de almacenar la electricidad en grandes cantidades. La producción de
electricidad debe, por tanto, estar siempre en condiciones de atender en todo
momento al consumo por lo que el parque eléctrico, tanto en la generación
como en el transporte y distribución, debe estar adecuadamente dimensionado
y continuamente adaptado a las necesidades de cada momento. De ahí que la
potencia instalada deba ser suficiente para cubrir, con una seguridad razonable,
la máxima demanda que pueda registrarse a lo largo del día, aun cuando en los
momentos de menor demanda no sea necesaria la utilización de buena parte de
las instalaciones existentes. Este es el aspecto fundamental que diferencia a la
energía eléctrica del resto de energías finales.
1 Introducción al mercado eléctrico español 15
Además los centros de producción y consumo deberán estar interconectados
de forma adecuada para procurar la fiabilidad. Así, en la península, los centros
de producción y de consumo se hallan conectados entre sí a través de una red
eléctrica muy mallada, capaz de hacer frente a las diferentes situaciones que
puedan presentarse.
El transporte de energía eléctrica se realiza en corriente alterna, dada la
facilidad que ésta ofrece para poder transformarse a otros valores de tensión y
de corriente. El objetivo de la transformación es el de conseguir que las
pérdidas de energía en el transporte sean mínimas. Ello se consigue por medio
de una elevación del valor de tensión a la salida de los centros de producción,
para conseguir así unos valores de corriente lo suficientemente bajos, y de una
posterior reducción de dicho valor de tensión a la llegada de los centros de
consumo.
Los sistemas eléctricos tienen normalizadas sus características para facilitar
su conectividad.
La tensión de servicio. Es la principal característica de los sistemas
eléctricos, siendo además la que determina el nivel de aislamiento de los
elementos que los integra.
Tensión nominal de la
red (V) en España y Europa
Tensión nominal de la
red (V) en otros países
Baja tensión (BT) 220, 400, 110, 240, 420
Media tensión (MT) (1.000), 3000, 6.000, 10.000,
(15.000), 25.000, (36.000)
2000, 4.600, 12.800, 13.200,
34.500
Alta tensión (AT) 45.000, 66.000, 110.000,
132.000
44.000, 69.000, 115.000,
138.000
Muy alta tensión 220.000, 400.000 230.000, 400.000
1 Introducción al mercado eléctrico español 16
La frecuencia de servicio. El valor normalizado en Europa es de 50 ciclos.
En América del Norte y otros países del continente la frecuencia de servicio es
de 60 ciclos.
El número de fases. El sistema trifásico es el más generalizado.
Los sistemas de energía eléctrica han evolucionado de forma parecida en
todos los países, convergiendo hacia una estructura y configuración técnica
muy similar. Son sistemas en equilibrio dinámico de enorme tamaño en el que
los condicionantes técnicos adquieren una especial relevancia. Cualquier
perturbación puede poner en peligro el equilibrio del conjunto, extendiéndose
las consecuencias negativas a todo el sistema por efecto dominó y poniendo en
peligro el abastecimiento de electricidad en extensas zonas geográficas que a
veces pueden abarcar varias regiones de un país.
Dada la amplitud del concepto de sistema eléctrico es habitual conviene
dividir a éste por partes o subsistemas. Estos subsistemas constan a su vez de
elementos o etapas, enumerados a continuación:
‐ Subsistemas de producción. Comprende las centrales generadoras.
‐ Subsistema de transporte. Comprende las subestaciones transformadoras
elevadoras, las líneas de transporte y las subestaciones transformadoras.
Es importante transformar la energía producida en los sistemas de
producción ya que la capacidad de transporte de las líneas en corriente
alterna aumenta proporcionalmente con el cuadrado de la tensión,
mientras que el coste por unidad de potencia transportada decrece con la
misma.
‐ Subsistema de distribución. Consta de las redes de reparto, subestaciones
transformadoras de distribución, redes de distribución en media tensión,
centros de transformación y redes de distribución en baja tensión.
1 Introducción al mercado eléctrico español 17
La interconexión entre estos sistemas queda indicada en la siguiente figura:
El papel que juega cada uno de los elementos que intervienen en los tres
subsistemas son:
‐ Centrales generadoras. Su misión es la de generar electricidad a partir de
otras fuentes de energía. Las tensiones mas habituales de generación
oscilan entre 3 y 23 kV, y la potencia generada en una central tipo medio
alto ronda los 500 y 1000 MVA.
‐ Estaciones transformadoras elevadoras. Es el primer paso de transformación
que encuentra la energía eléctrica a su salida de las centrales
generadoras. Como por lo general el lugar de generación suele estar
alejado de los grandes centros de consumo, esta energía debe ser
transportada, pero con el fin de que las pérdidas de energía en el
transporte sean lo más pequeñas posibles y que la instalación para tal
transporte resulte económica, se elevan estos valores de tensión de
generación a valores de tensión de transporte, que suelen ser de 220 y
400 kV.
‐ Líneas de transporte. Son las líneas aéreas que unen las subestaciones
elevadoras con las subestaciones transformadoras, y por tanto las
encargadas de realizar los transportes de energía a larga distancia. En
1 Introducción al mercado eléctrico español 18
España se ha adoptado el convenio de definir el transporte hasta el 220
kV incluido
‐ Subestaciones transformadoras. Tienen la función básica de reducir los
valores de tensión de transporte a unos valores aptos para el reparto en
las cercanías de las grandes áreas de consumo. Estos valores suelen ser
de 132, 66 o 45 kV.
‐ Redes de reparto. Son las líneas que se distribuyen en torno a los grandes
centros de consumo con unos valores de tensión que suelen ser de 132,
TT)*)UD)VWO)M%)0!)6!3*(=!)2,)0!")*1!"#*%,"),"&!")(,2,")"',0,%)",()!J(,!"F)
no obstante, en núcleos urbanos importantes estas redes son
subterráneas.
‐ Subestaciones transformadoras de distribución. Transforman los valores de
tensión de reparto a valores de distribución en media tensión, del orden
de 15 o 20 kV.
‐ Redes de distribución en media tensión. Son las líneas que unen las
subestaciones transformadoras con los abonados en media tensión, que
suelen ser instalaciones industriales o consumidores de cierta
importancia, o con los centros de transformación, donde se vuelve a
reducir los valores de tensión. Estas redes pueden ser aéreas o
subterráneas.
‐ Centro de transformación. Transforma los valores de media tensión a
valores aptos para el consumo en baja tensión.
‐ Redes de distribución de baja tensión. Son las líneas que unen los centros de
transformación con la acometida del abonado en baja tensión. Estas redes
son en su mayoría subterráneas.
1 Introducción al mercado eléctrico español 19
Magnitudes físicas del sistema eléctrico español.
Los datos publicados por Red Eléctrica de España, S.A. permiten hacernos
una idea de las dimensiones del sistema eléctrico español.
Magnitudes 2003 2004 2005 2006 2007
Líneas (km de circuito) de la red de
transporte (400kV, 220kV y menores) 27.551 28.009 33.096 33.503 33.669
Subestaciones (posiciones) 1.801 1.928 2.741 2.915 3.042
Capacidad de transformación (MVA) 32.566 37.216 54.272 56.072 58.022
1 Introducción al mercado eléctrico español 20
Niveles de tensión en las redes de transporte del sistema eléctrico
Evolución de las líneas de 400 y 220 kV. Fte REE
Conexiones internacionales. El caso de España.
La interconexión de sistemas eléctricos tiene importantes beneficios para los
sistemas involucrados. Algunas de estas ventajas son reducir los costes de
mantenimiento de la seguridad de los propios sistemas y reforzar su seguridad,
el aprovechamiento de las transacciones económicas mutuamente beneficiosas
entre los distintos sistemas y el establecer un mayor apoyo energético,
favoreciendo la integración de un mayor volumen de producción de energía
renovable.
1 Introducción al mercado eléctrico español 21
Pero al mismo tiempo la interconexión de sistemas presenta interesantes
problemas tecnológicos tales como: la cooperación para mantener la frecuencia
común a todo el sistema, el mantenimiento de los intercambios comerciales
estipulados entre los distintos países, el apoyo en situaciones de emergencia, el
análisis y control global de ciertos fenómenos de estabilidad de las redes, o la
gestión de las restricciones de red resultantes del comercio internacional.
Estos problemas técnicos se han agudizado en el reciente contexto de
apertura a la competencia, pues la demanda de transacciones internacionales se
han multiplicado, al ser promovidas por numerosos agentes individuales
(compradores y vendedores) con derecho de acceso a la red regional completa.
A los anteriores problemas tecnológicos deben ahora añadirse los de armonizar
y compatibilizar las regulaciones de los distintos países, la organización y el
diseño de las reglas de funcionamiento de los mercados regionales, la
determinación de los peajes a aplicar a las transacciones internacionales por el
uso de las redes, la búsqueda de la eficiencia económica en la asignación de las
capacidades limitadas de red y en la resolución de restricciones técnicas o el
planteamiento de los mecanismos regulatorios adecuados para conseguir una
expansión eficiente de la red de transporte.
Mapa. Regiones europeas interconectadas. En azul la región UCTE
1 Introducción al mercado eléctrico español 22
A partir de los datos publicados por Red Eléctrica de España se puede
afirmar que actualmente España presenta un balance exportador de energía
aunque, comparándolo con otros países europeos como Italia o Francia (el
primero importador y el segundo exportador), el nivel de los intercambios es
bajo. Los exportadores de España se dirigen principalmente a Portugal,
Marruecos y Andorra, mientras que la frontera con Francia suelo presentar un
saldo importador. No obstante, podría decirse que hasta ahora España ha sido
una isla energética y depende poco de la energía que pueda importarse de otros
países vecinos. Recientemente España y Francia han negociado una nueva
interconexión entre ambos países, con unas características sorprendentes que
advierte de la dificultad de construir líneas. Serán 60 km de línea soterrada a
través de los Pirineos, con lo que se pretende acabar con el aislamiento
energético de nuestro país. Se cree que será clave para que España se asegure
un alto suministro de energía nuclear francesa y redoblar su apuesta por las
energías renovables de carácter más incierto.
Evolución de los saldos físicos de los intercambios internacionales de los
últimos cuatro años (en GWh)
1 Introducción al mercado eléctrico español 23
1.3 Organización de las actividades eléctricas.
¿Cómo se organiza el sector para planificar, operar y mantener los sistemas
de energía eléctrica? La respuesta empresarial ha ido evolucionando con el
tiempo, adaptándose a los condicionantes impuestos por el desarrollo
tecnológico aunque también dependiendo de las teorías económicas
predominantes en cada momento y lugar. El concepto de empresa eléctrica
verticalmente integrada5 surgió en un principio de forma natural y así se ha
mantenido en la mayoría de los países hasta muy recientemente. El enorme
desarrollo del consumo eléctrico, las fuertes economías de escala en la
producción de electricidad y el aumento de la capacidad de transmisión de las
líneas a tensiones elevadas propiciaron el desarrollo de la red de transporte
para conectar sistemas aislados, dando lugar a verdaderos sistemas nacionales.
La especialización técnica y el gran volumen de recursos necesarios para
construir las grandes centrales de generación llevaron a que en muchos países
hayan convivido empresas locales de distribución junto con grandes empresas
verticalmente integradas que, además, venden energía eléctrica al por mayor a
las pequeñas distribuidoras.
Las características especiales de la electricidad han motivado que su
suministro se haya considerado como un servicio público en la mayoría de los
países, propiciando la intervención del Estado para garantizar una calidad y
precio razonables. Esta intervención en algunos casos se ha concretado en la
nacionalización de la industria eléctrica, como ha sido el caso de la mayor parte
de los países europeos hasta los años noventa. En los casos restantes, la
intervención ha consistido en imponer a las empresas la regulación típica de un
monopolio pues así se entendía hasta fechas recientes que había que regular a
5 Empresa verticalmente integrada es aquella que produce, transporta, distribuye y comercializa la
electricidad.
1 Introducción al mercado eléctrico español 24
este sector industrial. Esto es, niveles mínimos obligatorios de calidad de
servicio y precios regulados que remuneran los costes incurridos, incluyendo
una rentabilidad razonable del capital invertido. En ningún caso se cuestionó la
estructura de integración vertical de las empresas eléctricas.
Sin embargo, desde el comienzo de los años noventa ha comenzado a ganar
terreno una visión radicalmente distinta del negocio eléctrico, que precisamente
ha puesto en tela de juicio la estructura de integración vertical de la empresa
eléctrica, y que se está imponiendo rápidamente en el mundo entero. La fuerte
capacidad de interconexión de la red de transporte en la mayoría de los países,
y también entre países distintos, permite que generadores situados en cualquier
nudo de la red puedan competir entre sí por suministrar electricidad en
cualquier otro nudo de la red. Así pues es posible separar las actividades de red
(estrictamente monopolistas) de las de generación y comercialización, que
pueden realizarse en régimen de competencia.
Bajo esta nueva concepción del negocio eléctrico, la operación y la
planificación de los sistemas de energía eléctrica cobran una dimensión
diferente. Cada empresa de generación decide individualmente cuándo y
cuánto producir, la gestión del agua en sus embalses y los programas de
mantenimiento de sus plantas. Las decisiones de inversión en nuevas centrales
de producción no se toman centralizadamente por ninguna entidad o empresa
responsable de garantizar el suministro, sino por inversores privados que
consideran que su inversión resultará rentable y que o son responsables de la
garantía de suministro global. La actividad de distribución no se ve modificada
significativamente por este cambio regulatorio, excepto por el hecho de que
debe segregarse de la actividad de comercialización, que ahora pasa a ser
realizada en competencia. Por el contrario, la actividad de transporte está
siendo sujeta a una importante revisión, por su importancia crítica en
determinar las condiciones de competencia de los agentes en el mercado
mayorista.
1 Introducción al mercado eléctrico español 25
Así se han separado finalmente las actividades eléctricas en actividades
reguladas y liberalizadas, siendo las primeras el transporte y distribución y las
últimas la generación y la comercialización.
1.3.1 Actividades reguladas. Transporte y distribución.
Transporte.
Para llevar la energía eléctrica desde las zonas de producción a sus áreas de
consumo es necesaria la disponibilidad de un elemento de unión: el transporte.
Las líneas de transporte, además de conectar los centros de producción con los
grandes núcleos de demanda son responsables de mantener la conexión global
del sistema, funcionando en sicronismo. La red de transporte vertebra todo el
sistema eléctrico, interconectando entre sí todos sus centros neurálgicos. Es un
elemento clave en el equilibrio dinámico entre la producción y el consumo, y
por ello adopta una configuración mallada, permitiendo que todas las centrales
puedan servirse de respaldo entre ellas para cubrir eventuales fallos y está
dotada de sofisticados equipos de medida, protección y control para que las
faltas no pongan en peligro el correcto funcionamiento de todo el sistema.
La red de transporte ha adquirido una importancia especial en el nuevo
marco regulatorio abierto a la competencia, pues es el elemento facilitador del
mercado mayorista, el punto de encuentro entre los agentes del mercado. La
mejora y el desarrollo de las redes de transporte y su capacidad, tanto en el
interior de los países como en las interconexiones entre los mismos, ha
permitido el planteamiento de mercados eléctricos de dimensión regional o
internacional. Las redes de transporte en España se desarrollan mediante
nuevas inversiones que se aprueban periódicamente en el documento
-N0!%#H#1!1#G%)2,)0*")",1&*(,")2,),0,1&(#1#2!2)3)$!")@ Desarrollo de las redes de
&(!%"/*(&,5)2,0)K#%#"&,(#*)2,) >%2'"&(#!?)X'(#"6*)3):*6,(1#*O)L!) construcción
de los tramos de red incluidos en la planificación son de obligado
cumplimiento, siendo su retribución regulada y calculada anualmente por el
1 Introducción al mercado eléctrico español 26
Regulador de acuerdo con la metodología aprobada en la normativa vigente. El
titular de la red de transporte, como gestor de la red, deberá cumplir con las
instrucciones del operador del sistema y presentar sus planes de inversión para
los siguientes años para que, conforme la planificación, sean aprobadas por el
regulador.
Red Eléctrica de España, además de transportista, es el operador del sistema,
responsable de la operación del sistema eléctrico y de la gestión de la red de
transporte.
Como responsable de la gestión de la red de transporte, el Operador del
Sistema debe definir y planificar el desarrollo y ampliación de la red en alta
tensión con criterios homogéneos y coherentes, realizar el mantenimiento para
proporcionar la fiabilidad y disponibilidad requerida y garantizar el acceso de
terceros a la red de transporte.
1 Introducción al mercado eléctrico español 27
La retribución de la actividad de transporte.
La retribución de la actividad de transporte se establece atendiendo a los
costes de inversión, mantenimiento, operación y gestión de las redes, según un
modelo definido por el Regulador mediante RD y de acuerdo con lo dispuesto
en la Ley del Sector Eléctrico.
La metodología de retribución asegura la cobertura de todos los costes de
prestación del servicio y, a su vez, incentiva una gestión eficiente. Anualmente
se calcula como la suma de:
‐ Un término de remuneración ligado al valor actualizado de las
inversiones.
‐ Un término que permite recuperar los costes de operación y
mantenimiento.
‐ Unos incentivos a la disponibilidad y eficiencia de las instalaciones.
Distribución.
Desde la subestaciones de la red de alta tensión, ubicadas cerca de las áreas
de consumo, el servicio eléctrico es responsabilidad de la compañía
suministradora (distribuidora) que ha de construir y mantener las líneas
necesarias para llegar a los clientes. Redes de menor tensión se ramifican desde
las subestaciones de la red de alta tensión dando lugar a la red de distribución.
Estas líneas, realizadas a distintas tensiones, y las instalaciones en que se
reduce la tensión hasta los valores utilizables por los usuarios, constituyen la
red de distribución.
1 Introducción al mercado eléctrico español 28
Esta red se configura de forma distinta a la de transporte6, como se puede
ver en el apartado dos de este capítulo. En un primer nivel, regional, se extiende
una red, todavía de alta tensión, llamada red de reparto y que puede tener aún
una estructura mallada o en lazo. Desde subestaciones transformadoras de esta
red se ramifica una red de media tensión que se acerca ya al consumo más
desagregado y constituye la red de distribución propiamente dicha. Esta red
puede presentar distintas estructuras en anillo, pero siempre se opera de
manera radial. Normalmente en la subestaciones se sitúan los interruptores de
cabecera, que protegen los alimentadores que llegan a los distintos centros de
transformación en los que se vuelve a disminuir la tensión para alimentar en
baja tensión a los consumidores comerciales, domésticos, etc. De acuerdo con el
nivel de tensión del consumo su conexión será en lugar u otro.
Las líneas de la Red de Distribución pueden ser aéreas o subterráneas. En
zonas rurales, las redes de distribución suelen ser radiales y aéreas, ya que la
densidad de carga no es muy elevada, la fiabilidad requerida es menor por el
número de usuarios, no hay problemas de espacio y resultan más baratas. Un
problema es que la fiabilidad va disminuyendo a medida que aumenta la
distancia a la subestación. Por ello a veces existe alimentación de socorro que
puede suministrar la energía desde aguas abajo en caso de fallo. También
suelen existir problemas de caída de tensión que se intentan remediar con
tomas en los transformadores y bancos de condensadores que suministran la
potencia reactiva. Las redes de distribución en las zonas urbanas son
generalmente subterráneas. Se caracterizan por una gran densidad de carga en
poco espacio. Por la gran cantidad de usuarios, los requisitos de fiabilidad son
mayores. Resulta más costoso enterrar las líneas pero también debe tenerse en
cuenta que las distancias son menores que en las zonas rurales. Su estructura
6 Esquema general de un sistema eléctrico.
1 Introducción al mercado eléctrico español 29
suele ser mallada para mejorar la fiabilidad, pero su explotación suele ser radial
por razones de coste y de facilidad de operación.
Las redes de distribución recorren miles de km y están sometidas a fallos
más frecuentes que las líneas de transporte, teniendo por otra parte una
configuración menos redundante, por lo que los fallos en las redes de
distribución son causantes de la mayoría de los corte de suministro en los
consumidores finales. En términos de inversión estas redes suponen una parte
muy importante de los costes totales del sistema, superando normalmente en
varias veces los costes de inversión de la red de transporte.
Desde el punto de vista regulatorio, las líneas de tensión inferior a 220 kV
que no se consideren parte de la red de transporte tienen consideración de
instalaciones de distribución eléctrica. Al mismo tiempo, también son
consideradas instalaciones de distribución eléctrica todos aquellos elementos
necesarios (comunicaciones, control, protecciones, etc.) para realizar la
actividad de forma adecuada y en los términos de calidad que exige la
regulación.
Marco jurídico de la distribución.
Las distribuidoras son las responsables de planificar y operar las
instalaciones de distribución para atender los nuevos suministros y de
mantener las instalaciones existentes en las condiciones adecuadas y de calidad
que vienen determinadas por el regulador.
Además, las distribuidoras son responsables de la medición de los
suministros, de facilitar a los consumidores los contratos de acceso (las tarifas se
verán en el siguiente capítulo) y, transitoriamente, de facturar las tarifas
int,$(!0,")A!"&!)7',)",)#6/0,6,%&,),0)"#"&,6!)2,)0!)-&!(#H!)2,)Y0*)(,1'("*5O)
También debe poner en práctica los programas de gestión de demanda vigentes
(tercer capítulo).
1 Introducción al mercado eléctrico español 30
Las distribuidoras también tienen la obligación de mantener actualizada la
base de datos de puntos de suministro, enviar la información de clientes
requerida en la normativa a la Oficina de Cambio de Suministrador e informar
al transportista de las características de su red para garantizar la seguridad del
suministro.
La retribución regulada de la actividad de distribución.
La retribución de la actividad de distribución se establece
administrativamente atendiendo a los costes de inversión, operación y
mantenimiento y de gestión de las redes para asegurar el suministro de energía
en las condiciones de calidad fijadas reglamentariamente. Dadas las
características de la distribución y la complejidad de sus activos, la retribución
sigue un esquema diferente al del transporte, de forma que no se valora
individualmente cada uno de los elementos que componen la red de
distribución.
El esquema retributivo de la actividad de distribución en España se ha
+!"!2*) ,%) '%) (,/!(&*) 2,) '%!) -+*0"!5) ,%&(,) 0!") ,6/(,"!") 7',) 1*6/*%,%) 0!)
distribución en función de unos porcentajes estimados. La siguiente figura
muestra los coeficientes de reparto aplicados en el 2008 antes de modificarse el
sistema retributivo.
1 Introducción al mercado eléctrico español 31
El nuevo RD 222/2008 que regula la actividad de distribución, ha cambiado
el mecanismo de fijación de los ingresos. Ahora, en vez de fijarse la retribución
2,) 1!2!) ,6/(,"!) 1*6*) '%) /*(1,%&!Z,) 2,) '%!) -+*0"!5?) 1!2!) ,6/(,"!) &#,%,) "')
propia fórmula de ingresos. Éstos evolucionan cada año a partir del valor
reconocido en el año anterior para la empresa, actualizado por el crecimiento de
la demanda en su zona de distribución y teniendo en cuenta un factor de escala
para cada empresa, que recoge las particularidades físicas, orográficas y
operativas de su zona de distribución. Finalmente, los ingresos de cada empresa
se complementan con incentivos a la calidad del suministro y pérdidas en la
red.
1.3.2 Actividades liberalizadas. Generación y comercialización
La demanda.
Como se ha podido ver en la breve introducción histórica, la demanda
eléctrica ha experimentado un crecimiento sostenido y pronunciado desde que
empezó su utilización práctica. Los índices de consumo eléctrico constituyen
uno de los elementos más significativos del desarrollo industrial de un país,
siendo importante su paralelismo con los índices de crecimiento del PIB.
Existen varios conceptos que caracterizan al consumo. Seguramente, los más
importantes son los de potencia y energía. La potencia es la energía requerida
por unidad de tiempo. Es, por tanto, el valor instantáneo de la energía
consumida. No pudiéndose almacenar la energía eléctrica, toda instalación
eléctrica debe estar preparada para soportar el máximo valor instantáneo de
energía consumida, es decir, debe estar diseñada para soporta la máxima
potencia que va a demandar la instalación a lo largo de todo el consumo. Así,
para caracterizar a cada consumo será necesario no sólo conocer la energía
eléctrica que requiere, sino saber el perfil de consumo a lo largo del tiempo.
Estos perfiles, que caracterizan cada consumo, son conocidos como curvas de
1 Introducción al mercado eléctrico español 32
carga. Representan la potencia consumida en función del tiempo, a lo largo del
mismo. En los casos prácticos del proyecto y en los ejemplos que se ha tenido
que hacer durante todo el año, estas curvas constituyeron los puntos de partida
para realizar todos los cálculos necesarios. La gráfica adjunta representa la
curva de carga horaria de una fábrica de envasado de gases industriales cuyo
periodo abarca un año. Pueden distinguirse fácilmente los fines de semana así
como los meses en los que la demanda es mayor, en invierno.
Integrando las curvas de carga se obtiene la energía consumida en el periodo
de tiempo representado. A una misma energía consumida le pueden
corresponder muy distintos y diversos perfiles de potencia (curvas de carga).
Algunos serán planos, indicado un consumo de energía eléctrica constante en el
tiempo, otros presentarán picos y valles marcados, caracterizando una
demanda variable en el tiempo.
Normalmente el perfil de carga presenta ciclos repetitivos en el tiempo. Así,
los días laborables de la semana son semejantes entre sí y las semanas de una
misma estación también, los fines de semana, etc. Teniendo en cuenta esto,
1 Introducción al mercado eléctrico español 33
pueden representarse curvas como la siguiente, en la que se refleja el consumo
medio de cada uno de los días de la semana a partir de los datos que se pueden
extraer de la curva de carga anual de la misma fábrica de la figura anterior.
El efecto agregado de las curvas de carga individuales da lugar a una curva
de formas más suaves pero que presenta una marcada estacionalidad. Como
ejemplo se representa la curva de carga del sistema eléctrico español durante
tres semanas del año.
1 Introducción al mercado eléctrico español 34
Además de la visión cronológica de las curvas de carga, existe otra forma de
representar la curva del consumo eléctrico, muy útil para ciertas aplicaciones y
estudios, denominada curva monótona de carga. Representa el número de
horas para las cuales la demanda supera un determinado valor. Así, con el
ejemplo de la figura representada, se puede decir que durante 3.000 horas del
año representado la demanda es superior a 25.000 MW.
La generación.
La actividad de generación eléctrica consiste en la transformación de alguna
clase de energía (nuclear, térmica, hidráulica, eólica, solar, etc.) en energía
eléctrica primaria.
Son muchas las tecnologías empleadas para la generación de la energía
eléctrica. Las centrales hidráulicas, nucleares, térmicas convencionales y de ciclo
combinado, cogeneración, eólicas, solares, etc. son algunos ejemplos de posibles
1 Introducción al mercado eléctrico español 35
formas de producir la electricidad. Pero, ¿por qué es necesaria esta mezcla? La
principal justificación de la existencia de tecnologías tan diversas operando es
puramente económica y se deriva de la curva de perfil de carga de la demanda.
El rango de costes fijos de inversión para construir la central y de costes de
operación para generar con la central varía mucho de una tecnología a otra. Así,
las centrales nucleares requieren unos altísimos costes de inversión pero, sin
embargo, presentan unos costes de operación comparativamente muy
reducidos, lo que convierte a la nuclear en una tecnología interesante desde el
punto de vista económico para cubrir la franja de la curva de demanda que se
extiende durante todas las horas del año, es decir, son las centrales más
adecuadas para producir de forma constante a lo largo del tiempo. En el otro
extremo, la tecnología basada en las turbinas de gas es de las más caras en
costes de operación pero muy barata en costes de inversión, por lo que es un
tipo de generación muy atractivo para cubrir las puntas de demanda durante
las pocas horas del año en las que tienen lugar. En un punto intermedio se
encuentran las centrales térmicas convencionales.
Es decir, desde el punto de vista económico, las tecnologías se caracterizan
por sus diferentes estructuras de costes y por su capacidad para adaptarse a las
variaciones de la demanda con la suficiente rapidez. Esto hace que sea eficiente
que en un mismo instante estén produciendo varias tecnologías diferentes.
Cobertura de la curva de carga horaria durante un día por la distintas
tecnologías. Fte. REE
1 Introducción al mercado eléctrico español 36
En resumen, podemos clasificar las distintas tecnologías de generación de
acuerdo a su estructura de costes en:
‐ Tecnologías de base. Se incluyen aquí las centrales nucleares, centrales de
carbón y los ciclos combinados. Sus costes fijos son elevados mientras
que los variables son relativamente bajos.
‐ Tecnologías de punta. Centrales de fuelóleo y turbinas de gas. Sin costes
fijos son bajos y los variables son altos.
‐ Tecnologías intermedias. Centrales de carbón, ciclos combinados y
centrales hidráulicas regulables. Sus costes fijos y variables se encuentran
entre los de las centrales de base y las centrales de punta.
Aunque las decisiones de inversión corresponden a las empresas
generadoras, se puede explicar un poco más detalladamente el porqué de la
distribución de las tecnologías energéticas en los anteriores tres grupos. A partir
de la figura siguiente, resulta evidente que cada tecnología es óptima (mínimo
coste total) para un determinado número de horas de funcionamiento esperado
1 Introducción al mercado eléctrico español 37
al año. Los costes fijos y variables de cada una de las tecnologías así lo
determinan. Los fijos representan la ordenada en el origen y los costes variables
0!)/,%2#,%&,)2,)0!)H'%1#G%)-1*"&,)H#%!0)*)&*&!0)2,)0!)&,1%*0*$=!5O)."=?)&,1%*0*$=!")
cuya pendiente sea menor (costes variables menores), serán más interesantes
cuantas más horas de operación tengan. Dentro de la curva monótona de carga,
estas tecnologías ocuparían la base, siendo el tiempo de funcionamiento de las
mismas el máximo posible. (gráfica última del apartado). Este razonamiento
también se aplicará para las tecnologías intermedias y de punta.
De acuerdo con lo expuesto, para cubrir la demanda de la curva monótona
de carga de forma óptima habría que utilizar cada una de las tecnologías
óptimas para cada uno de los rangos de horas de funcionamiento descritos en la
figura anterior. Cubriendo la demanda de acuerdo a este criterio resulta que
1 Introducción al mercado eléctrico español 38
cada tecnología funciona al año un número de horas dentro del cual la misma
es óptima, es decir, es la tecnología de mínimo coste. Así, resulta un parque de
generación7 que minimiza el coste total de la generación eléctrica.
En conclusión. Se observa que para satisfacer la demanda de forma óptima
es necesario que en determinados instantes haya más de una tecnología
generando electricidad.
La generación de energía eléctrica con grandes centrales requiere inversiones
muy elevadas y amortizables a muy largo plazo (25 o 30 años). Este elevado
riesgo solamente es asumible por grandes empresas o por entidades de
propiedad pública, bajo una garantía regulatoria suficiente, que asegure la
recuperación de los costes de inversión y operación por medio de unas tarifas
7 Potencia instalada de cada tipo de tecnología.
1 Introducción al mercado eléctrico español 39
reguladas. No obstante, la irrupción de nuevas tecnologías, como la de los ciclos
combinados de gas, ha disminuido significativamente el riesgo ya que son
centrales más flexibles, competitivas, de tamaño más reducido y con menor
tiempo de construcción. Esto último ha facilitado la entrada de inversión
privada tras los cambios regulatorios que han introducido la libre competencia
en el sector eléctrico.
En el marco eléctrico actual, cualquier empresa puede instalar nuevas
centrales eléctricas del tipo, potencia y localización que considere más
conveniente, sin otras condiciones que las que la legislación española establece
para la puesta en marcha de cualquier instalación industrial. Estas condiciones
",)(,H#,(,%?),%&(,)*&(!")1',"&#*%,"?)!)0!),H#1#,%1#!)3)",$'(#2!2)2,)0!)#%"&!0!1#G%F),0)
1'6/0#6#,%&*)2,)0*")1(#&,(#*")2,)/(*&,11#G%)2,0)6,2#*)!6+#,%&,F)0!)!2,1'!1#G%)
de su localización y la suficiente capacidad legal, técnica y económica de la
empresa solicitante.
Anteriormente las únicas centrales eléctricas de tamaño significativo que se
podían instalar en España eran las que estaban contempladas en los Planes
Energéticos Nacionales (PEN) vigentes en cada momento. En el caso del sector
eléctrico solían ser demasiado detallados en cuanto a las centrales que se debían
construir, su potencia, su ubicación , el tipo de energía primaria que tenían que
utilizar, el año de entrada en servicio, etc.
Comercialización.
Uno de los principios básicos del sistema eléctrico actual es la liberalización
de la actividad comercializadora, es decir, todo lo relacionado con la
contratación del suministro eléctrico por parte de los consumidores. La
comercialización está considerada en la Ley del Sector Eléctrico como una
actividad con naturaleza propia, al igual que la generación, el transporte y la
distribución y desde el 1 de enero de 2003 el derecho a elegir está a disposición
1 Introducción al mercado eléctrico español 40
de la totalidad de los consumidores españoles (más de 25 millones de clientes),
adelantando en cuatro años y medio a lo establecido en las Directivas Europeas.
La liberalización de la actividad de comercialización ha permitido la
creación de un nuevo tipo de empresas, las comercializadoras, dedicadas
exclusivamente al suministro de electricidad a través de una contratación con
los consumidores de electricidad.
Estas empresas comercializadoras no necesitan disponer de redes eléctricas
de distribución propias para el suministro de electricidad ya que se ocupan de
las relaciones contractuales, en términos económicos y legales, con los clientes:
condiciones de contratación de suministro, facturación, cobro, servicios de
asesoramiento, etc.
Las empresas comercializadoras deben fomentar el uso racional de la
energía, exigiendo a los clientes que sus instalaciones cumplan con las
condiciones técnicas de uso adecuadas, a fin de que su utilización no perjudique
la calidad de servicio de otros consumidores.
No obstante, la Ley prohíbe expresamente que un agente que ejerce en el
transporte o distribución pueda realizar también actividades en régimen de
competencia. Unas y otras han de ser ejecutadas por empresas jurídicamente
independientes. Sí permite, en cambio, que una empresa que realiza actividades
reguladas y otra que lleva a cabo actividades no reguladas pertenezcan a un
mismo grupo de empresas, y también que una misma sociedad lleve a cabo las
dos actividades no reguladas, es decir, generación y comercialización.
1.3.3 Legislación básica. Compendio de la regulación aplicable
La Ley del Sector Eléctrico aprobada en noviembre de 1997 y actualizada en
junio de 2007, su complejo desarrollo reglamentario posterior fijaron los
1 Introducción al mercado eléctrico español 41
principios fundamentales en los que se basa el funcionamiento del mercado
eléctrico español. Pueden resumirse del siguiente modo:
Se declara el suministro eléctrico como un servicio básico, esencial y
universal que debe ser accesible a todos los consumidores dentro del
territorio español, en las condiciones de calidad y seguridad que
reglamentariamente se establezcan por el Gobierno, con la colaboración
de las Comunidades Autónomas.
‐ Existe una separación jurídica entre actividades reguladas (transporte y
distribución) y no reguladas (generación y comercialización), de la
energía eléctrica.
‐ La planificación vinculante estatal de la generación eléctrica ha
desaparecido, habiendo libertad para la instalación de nuevas centrales,
sometidas solamente a autorizaciones administrativas. No obstante, el
Gobierno puede establecer una planificación indicativa de ésta.
Solamente el desarrollo de la red de transporte eléctrico queda sujeto a la
planificación urbanística y de ordenación del territorio.
‐ El funcionamiento de las centrales generadoras deja de estar sometido a
una gestión económica conjunta del sistema. En su lugar, la utilización
de dichas centrales pasa a basarse en las decisiones de sus titulares,
siempre dentro de las reglas de un mercado mayorista de producción
eléctrica. En consecuencia, la retribución de las actividades de generación
dejó de hacerse en función de los valores estándares de costes
reconocidos, pasando a basarse en los resultados del mercado mayorista.
‐ La explotación del sistema eléctrico nacional deja también de ser un
servicio público de titularidad estatal, siendo ejercido por una empresa @
Red Eléctrica de España @ que deberá perder la mayoría pública en su
accionariado.
‐ Se establece el principio del derecho de acceso a terceros a las redes de
transporte y distribución eléctricas, que se consideran monopolio natural
en razón de la eficiencia económica que representa la existencia de una
1 Introducción al mercado eléctrico español 42
(,2) Y%#1!) -7',) ",) /*%,) !) 2#"/*"#1#G%) 2,) 0*") 2#H,(,%&,") !$,%&,") 2,0)
"#"&,6!) ,0J1&(#1*) 3) !) 0*") 1*%"'6#2*(,"5O)
La retribución económica de este derecho de acceso es fijada
administrativamente a través de las tarifas de acceso (punto 2.3.)
‐ La comercialización de la electricidad (identificada plenamente como
actividad singularizada en la nueva ley) se basa en los principios de
libertad de contratación y de elección de suministrador por parte del
cliente. Desde el 1 de enero de 2003, todos los clientes pueden elegir su
suministrador de electricidad.
‐ Existe libertad para comprar o vender electricidad a empresas y
consumidores de otros países miembros de la Unión Europea.
A partir del año 1998, fecha en que entra en vigor la Ley del Sector Eléctrico,
los Reales Decretos (RD) y Órdenes Ministeriales (OM) de mayor importancia
para los consumidores que se publican, en orden cronológico, son los
siguientes.
‐ RD 1164/2001, del 26 de octubre, que establece las tarifas de acceso a las
redes de transporte y distribución de energía eléctrica.
‐ RD 1634/2006, del 29 de diciembre, que establece la tarifa eléctrica a
partir del 1 de enero de 2007 e introduce modificaciones en algunas
tarifas.
‐ RD de 1 de julio de 2008, que elimina las tarifas de AT
‐ ORDEN ITC/2370/2007, del 26 de julio. Se regula el servicio de gestión
de la demanda de interrumpibilidad para los consumidores que
adquieren su energía en el mercado de producción.
‐ ORDEN ITC/2794/2007, del 27 de septiembre. Se revisan las tarifas
eléctricas a partir del 1 de octubre. Asimismo se establecen las
adaptaciones necesarias de los periodos horarios de las tarifas para su
aplicación a partir del 1 de enero de 2008.
‐ Resolución del 28 de diciembre de 2007 de la Dirección General de
Política Energética y Minas. Se fija el precio medio de la energía a aplicar
1 Introducción al mercado eléctrico español 43
en el cálculo de la retribución del servicio de gestión de la demanda de
interrumpibilidad ofrecido por los consumidores que adquieren su
energía en el mercado de producción durante el primer trimestre de
2008.
Toda esta legislación y su aplicación para la determinación del precio final
de la energía para el consumidor final serán tratadas más adelante.
2 Formación de precios en régimen de mercado 1
2 Formación de precios en régimen de mercado
2.1 Introducción
El objetivo principal de este trabajo de investigación es entender
correctamente la regulación y funcionamiento del mercado eléctrico desde el
punto de vista de un gran consumidor industrial, cuyo consumo en energía es
intensivo. Para ello, se presentan a lo largo de este capítulo y los siguientes, los
aspectos que caracterizan el mercado de electricidad. Es en el último capítulo
dónde, con dos casos prácticos, se aplica lo expuesto en éste y demás capítulos.
En esta introducción se presentarán algunas características y conceptos del
mercado de electricidad y del precio final de la electricidad, que se
desarrollarán más en profundidad y detalle en los demás puntos del capítulo.
El principio básico que preside la organización del mercado de electricidad
es la libertad de contratación para productores, comercializadores y
consumidores, declarada por la Ley del Sector Eléctrico (Ley 54/1997) y
modificada y mejorada por desarrollos posteriores.
De acuerdo con esta Ley, las posibilidades de participación en el mercado
mayorista de electricidad, o mercado de producción de energía eléctrica son las
siguientes:
Contratación en el mercado diario, lo que permite la ejecución de contratos
bilaterales, la contratación a través de ofertas en el mismo y la integración
voluntaria de las posiciones a plazo para las que se desee entrega física a través
del mercado diario.
Contratación a plazo de carácter bilateral mediante negociación entre las
partes o a través de subastas en el mercado organizado.
2 Formación de precios en régimen de mercado 2
Contratación en el mercado intradiario. Está abierto a todos los agentes,
tanto los que hayan contratado energía a través del mercado diario, como los
que hayan suscrito contratos bilaterales.
En la actualidad, y desde 2003, todos los consumidores, tanto domésticos
como industriales, han adquirido la condición de liberalizados, pudiendo por
tanto, elegir suministrador, acudir al mercado o permanecer como
consumidores a tarifa integral. La única limitación consiste en que una vez han
optado por participar en el mercado, no pueden volver a la tarifa integral.
Organización del mercado mayorista de electricidad
El funcionamiento del sistema eléctrico nacional está encomendado a dos
entidades independientes, el operador del mercado y el operador del sistema.
La gestión de los mercados diario e intradiario está encomendada al
Operador del Mercado Ibérico de Energía ! Polo Español, S.A. (OMEL), que,
además es responsable de la liquidación y comunicación de las obligaciones de
pago y derechos de cobro a que dé lugar la energía contratada en los citados
mercados de producción de electricidad.
La gestión técnica del sistema eléctrico está encomendada al operador del
sistema, Red Eléctrica de España, S.A., a quien corresponde la realización de
todas aquellas funciones que se derivan del funcionamiento de los servicios de
ajuste del sistema, de las desviaciones producidas en el mercado de producción
de energía eléctrica, así como la liquidación y comunicación de las obligaciones
de pago y derechos de cobro a que den lugar los servicios de ajuste del sistema
y la garantía de potencia.
En cuanto a su organización, el mercado de producción de energía eléctrica
se configura como el conjunto de transacciones económicas derivadas de la
participación de los sujetos del mercado en las sesiones del mercado diario,
2 Formación de precios en régimen de mercado 3
intradiario, contratación bilateral, contratación a plazo, así como de la
aplicación de los servicios de ajuste del sistema y de las desviaciones que se
produzcan en el mercado.
Los sujetos del mercado son las entidades habilitadas para actuar
directamente en el mercado eléctrico como vendedores o compradores de
electricidad. Pueden actuar como sujetos del mercado los productores, los
agentes externos, distribuidores y comercializadores del electricidad así como
los consumidores de energía eléctrica y los representantes de cualquiera de los
sujetos citados. Los sujetos del mercado pueden acudir al mismo como agentes
del mercado diario (sujetos del mercado que particpan en los mercados diarios
e intradiarios) o celebrar contratos bilaterales. De esta manera, en el modelo de
liberalización en España pueden coexistir la contratación en un mercado
organizado oficial (suministro a plazo, mercado diario y mercado intradiario)
con la contratación externa al mercado organizado (bilaterales de suministro
entre productores, comercializadores y consumidores, e incluso, contratos
financieros), siendo una finalidad primordial de dicho mercado organizado
posibilitar a los agentes un sistema de contratación en condiciones de igualdad
para todos ellos, proporcionando una correcta formación de los precios.
2 Formación de precios en régimen de mercado 4
En julio del 2006 comenzó la contratación a plazo en OMIP, obligatoria en
una proporción para los distribuidores españoles y portugueses, y libre para el
resto de los agentes, de acuerdo con la Orden ITC/2129/2006, por la que se
regula la contratación a plazo de un determinado volumen de energía eléctrica
por los distribuidores en el segundo semestre de 2006.
Responsabilidades en la gestión del mercado. Una vez celebrada la sesión
del mercado diario, el operador del sistema estudia la viabilidad técnica del
programa de funcionamiento para garantizar la seguridad y fiabilidad del
suministro. Si el programa resultante del mercado diario más los contratos
bilaterales no cumple los requisitos de seguridad, el operador del sistema
resuelve dichas restricciones técnicas modificando el programa de las unidades
de producción resultante del mercado diario y de los contratos bilaterales.
El mercado intradiario consta de seis sesiones, celebradas a lo largo de las
24 horas del día, pudiendo acudir al mismo, respetando las limitaciones que
establece el operador de sistema para evitar restricciones, todos los agentes que
han participado en el mercado diario o en contratación bilateral.
La gestión de servicios complementarios y la de desvíos tienen por objeto
que el suministro se realice en las condiciones de calidad y fiabilidad
establecidas y que la producción y el consumo se encuentren permanentemente
equilibrados. Son gestionados por el operador del sistema mediante
mecanismos de subasta entre unidades de producción, siempre que sea posible.
Como resultado de estas transacciones y procesos, el operador del mercado
efectúa la liquidación, es decir, la determinación de los derechos de cobro y
obligaciones de pago correspondientes a cada agente por su participación en los
mercados diario e intradiario, mientras que el operador del sistema realiza la
liquidación de los servicios de ajuste del sistema y la garantía de potencia.
Componentes del precio final. El precio de la electricidad en cada punto de
suministro al consumidor tiene dos componentes; el precio del mercado que
2 Formación de precios en régimen de mercado 5
retribuye la entrega de energía eléctrica, junto con los servicios de ajuste y la
garantía de potencia, por una parte y la tarifa o peaje a satisfacer por el uso de
las redes de transporte y distribución, por otra, como se muestra a continuación.
2 Formación de precios en régimen de mercado 6
La Comisión Nacional de la Energía por su parte, tiene por misión velar por
que las actividades del mercado se lleven a cabo en régimen de libre
competencia y que las actividades reguladas se realicen según los
procedimientos establecidos.
El Comité de Agentes del Mercado de producción de electricidad, por su
parte, órgano que integra a los representantes de los agentes que tienen acceso
al mercado, al operador del mercado y al operador del sistema, tienen funciones
de seguimiento del funcionamiento del mercado diario e intradiario y de
asesoramiento al operador del mercado.
2 Formación de precios en régimen de mercado 7
Características del mercado de producción de electricidad
Las principales características que definen el mercado eléctrico se resumen
a continuación.
Similitud a otros mercados. El mercado diario de electricidad es un
mercado regulado similar a otros mercados organizados de mercancías, e
incluso, a los mercados financieros, que garantizan la objetividad y
transparencia de las operaciones realizadas en el mismo.
Mercado público. Es un mercado público, al que pueden acceder todas las
entidades y personas que cumplan las condiciones de acceso establecidas con
carácter general en las disposiciones y normas reguladoras.
Garantía de los participantes. La garantía de los participantes en el
mercado se apoya fundamentalmente en cinco puntos.
1. Las reglas de funcionamiento del mercado son públicas y conocidas.
2. Las reglas de funcionamiento del mercado son únicas para todos los
participantes, con independencia del volumen de operaciones o de la naturaleza
de su actividad, producción, distribución, comercialización o consumo.
3. Los derechos y obligaciones de todos los participantes en el mercado
están contenidos en sus reglas de funcionamiento, y aceptadas expresamente en
el contrato de adhesión.
4. Las reglas de funcionamiento del mercado prevén todas las
contingencias posibles para poder efectuar la casación y las operaciones
subsiguientes en cualquier caso.
5. El sistema de garantías de pago, establecido en las reglas de
funcionamiento del mercado, asegura el correcto funcionamiento y la
efectividad económica de las transacciones en beneficio de todos los
participantes.
2 Formación de precios en régimen de mercado 8
Secuencia y procesos del mercado
El conjunto de actividades que se realizan alrededor del mercado de
producción de energía eléctrica tienen por finalidad la determinación de las
transacciones comerciales y la programación de las unidades de producción
necesarias para que se realicen dichos intercambios. El funcionamiento sigue el
siguiente orden:
El mercado diario, al que se pueden enviar ofertas en todo momento, con
el límite de la hora de cierre del periodo de recepción de las mismas, publica los
resultados de la sesión correspondiente antes de las 11 horas. Las transacciones
derivadas de la sesión del mercado diario y los contratos bilaterales dan lugar al
"#$%&$'(')*+'$+%),'-.)*.)/012+%1'(+.13%45
Antes de la hora límite de cierre, se reciben del operador del mercado a
plazo, OMIP, información sobre las posiciones abiertas a término en el mercado
a plazo, de las que sus titulares han solicitado realizar la entrega física. Estas
posiciones abiertas se transforman en ofertas precio ! aceptantes al mercado
diario con la información enviada por los titulares de las mismas.
Antes del cierre de la recepción de ofertas del mercado diario, se recibe la
información necesaria relativa a la comunicación de la ejecución de la energía
adquirida por las distribuidoras en las subastas a plazo y de las ejecuciones de
las opciones sobre energías primarias comunicados por los compradores de las
mismas.
Recepción de las comunicaciones del operador del sistema sobre los
resultados de las subastas de capacidad de las interconexiones, con
identificación de los agentes que han obtenido derechos de uso de dicha
capacidad.
2 Formación de precios en régimen de mercado 9
Una vez celebrada la sesión del mercado diario, el operador del sistema
procede a estudiar y a dar solución a las restricciones técnicas que pudieran
derivarse del resultado del mercado diario. Este proceso, que genera el
"#$%&$'(')*+'$+%)6+',7.)#$%6+-+%1'748)/+1'7+9')'13.-)*.)7'-):;)<%$'-5
=%,$.) 7') ,'-.) *.7) "#$%&$'(')*+'$+%) 6+',7.)#$%6+-+%1'748) .7) %#.$'*%$ del
sistema asigna, mediante subasta basada en el precio marginal, las bandas de
regulación secundaria a subir y a bajar a las unidades de producción
#'$3+2+#'13.-5)>7)$.-073'*%8)?0.)-.)#0,7+2')'13.-)*.)7'-):@)<%$'-8).-).7)"#$%&$'(')
*+'$+%)6+',7.45
A continuación se produce la convocatoria de las distintas sesiones, seis en
la actualidad, del mercado intradiario. El resultado de cada sesión de este
(.$2'*%).-).7)"#$%&$'(')<%$'$+%)/+1'745
El equilibrio físico en la red entre la producción y el consumo de
electricidad, en cada momento, sobre la base de los resultados del mercado, se
realiza por el operador del sistema mediante la aplicación de servicios
complementarios8)?0.)*.)70&'$)'7)"#$%&$'(')*+'$+%)%#.$'3+6%4.
2 Formación de precios en régimen de mercado 10
2.2 Descripción detallada del mercado de producción
2.2.1 Mercado de producción
2.2.1.1. Ofertas y casación en el mercado diario, ofertas de venta.
El mercado diario
El mercado diario concentra la mayor parte de las transacciones. En él
participan como agentes del mercado los titulares de las unidades de
generación, los autoproductores por su energía excedentaria, los agentes
externos, los distribuidores, los comercializadores y los consumidores
cualificados. Para cada tramo horario del día previo a la entrega física de la
electricidad, los agentes presentan ofertas de venta y de compra de electricidad
al Operador del Mercado (OMEL). Las ofertas de venta o compra especifican el
precio mínimo o máximo, respectivamente, al cual están dispuestos a vender o
adquirir las cantidades ofertadas. Una vez que los vendedores han presentado
sus ofertas al mercado para cada una de las horas del dís siguiente, el OMEL las
agrega y ordena por precio ascendente, resultando así la curva de oferta del
mercado para cada hora. Las ofertas pueden incluir hasta un total de 25 pares
de precios8 y cantidades, siendo las ofertas de venta crecientes, y, las de
compra, decrecientes. Las ofertas de venta pueden ser simples o incorporar
opcionalmente condiciones complejas. Ofertas simples se presentan para cada
periodo horario y unidad de producción con expresión de un precio y de una
cantidad de energía. Las ofertas complejas son aquellas que, además de cumplir
los requisitos exigidos para las ofertas simples, incorporan, todas o algunas de
las condiciones complejas (técnicas o económicas), tales como la condición de
8 Las ofertas de venta y compra pueden realizarse considerando de 1 a 25 tramos en cada hora, en
cada uno de los cuales se oferta energía y precio para dicha hora, siendo creciente el precio en cda tramo
para el caso de las ventas y decreciente en el caso de las compras.
2 Formación de precios en régimen de mercado 11
indivisibilidad, el gradiente de carga, la condición de ingresos mínimos o de
parada programada.
Pero, ¿cómo son las ofertas de venta de energía en el mercado diario? En
España, el mercado diario se ha diseñado como un mercado marginalista. En
este tipo de mercados, la oferta de un generador representa la cantidad de
energía que está dispuesto a vender a partir de cierto precio mínimo. Así, las
ofertas de un generador reflejan:
En cuanto a la cantidad, las restricciones físicas a las que está sujeta la
instalación. Por ejemplo, la potencia disponible, la potencia mínima a la que ha
de operar la central para que la misma sea estable y segura, etc.
En cuanto al precio ofertado, éste refleja el coste de oportunidad que le
supone generar electricidad:
1. Los costes que evitaría incurrir de optar por no producir. Por ejemplo,
coste de arranque de la central, coste de mantenimiento asociado a la
producción, etc.
2. Los ingresos a los que renuncia por el hecho de producir. Por ejemplo,
#'$')01')2.13$'7)3A$(+2'8)6.1*.$)')01)3.$2.$%).7)2%(,0-3+,7.)03+7+9'*%B)#'$')01')
hidráulica con embalse, generar con el agua embalsada en otro instante futuro
con un precio esperado del mercado que sea mayor.
Es importante indicar que coste de oportunidad no es lo mismo que coste
variable. Bajo un comportamiento racional y eficiente, las ofertas de los
generadores no deben reflejar sus costes variables sino los de oportunidad. Los
siguientes ejemplos lo explican.
Para un generador térmico el coste del combustible es un coste variable.
Sin embargo, si el generador no tiene la posibilidad de revenderlo a un tercero
entonces el coste de dicho combustible no supondrá un coste de oportunidad y,
por tanto, no debería ser incorporado a su oferta. En cambio, si el generador sí
2 Formación de precios en régimen de mercado 12
puede revenderlo a un tercero, entonces sí es un coste de oportunidad y deberá
incorporarlo a su oferta. Luego, el coste que debe ser incorporado no será el
precio al que se adquirió el combustible, sino el precio al que se puede
revender.
Para un generador hidráulico con embalse, el uso del agua no supone
ningún coste variable pero sí coste de oportunidad. Ello se debe a que, gracias
al embalse, tiene la posibilidad de utilizar el agua para producir en otro instante
dado con un precio esperado de mercado mayor. Luego aunque el coste
variable sería nulo, no lo sería su coste de oportunidad, el cual se incorporará a
su oferta.
Los generadores no incorporan sus costes fijos a sus ofertas al mercado
diario al no ser estos costes de oportunidad. Entonces, surge una nueva
pregunta. ¿Cómo recuperan los generadores sus costes fijos? Esta recuperación
se produce a través de:
1. Margen del mercado. Diferencia entre el precio de mercado recibido y
los costes variables en los que se ha incurrido. Estos costes variables son
distintos de los de oportunidad, con los que se construyen las ofertas.
2. Pagos por capacidad (se verán más adelante). Pagos regulados que
reciben los generadores como contribución a la recuperación del coste fijo de la
central de punta. Este pago lleva a que se reduzca el coste fijo que las centrales
han de recuperar a través del margen de mercado, lo que hace que el número de
horas al año de déficit de capacidad sea menor.
Adicionalmente, en algunos mercados existe un tope al precio del mercado
impuesto por el regulador. En el caso del mercado español, dicho tope existe y
tiene un valor de 180 CDEF<5) G'*%) ?0.) '7) .H+-3+$) .-3.) 3%#.) .7) #$.2+%) *.7)
mercado no puede llegar a reflejar el precio de escasez, el pago por capacidad
ha de elevarse con el objetivo de cubrir la diferencia entre el tope de precio y el
precio de escasez.
2 Formación de precios en régimen de mercado 13
Ofertas de compra
Los consumidores finales pueden clasificarse en función de la magnitud del
consumo y del fin para el que utilicen la electricidad. Se suelen distinguir entre
grandes consumidores industriales, consumidores de tamaño medio en sectores
industriales y de servicios y, finalmente pequeños consumidores conectados a
las redes de baja tensión.
Mientras no finalice el periodo transitorio en el que se encuentra el sector
eléctrico en España, en el que conviven un mercado liberalizado y unas tarifas
reguladas, la participación de los mismos tipos de consumidor en el mercado
depende de la modalidad de suministro a la que estén acogidos, regulado o
competitivo.
Bajo la modalidad de suministro regulado, los consumidores participan
indirectamente en el mercado. Lo hacen a través del distribuidor o del
suministrador a tarifa que les corresponde. Este es el agente encargado de
estimar la demanda de sus consumidores y de realizar, por tanto, en el mercado
las ofertas de compra de energía que sean precisas.
2 Formación de precios en régimen de mercado 14
La mayoría de los consumidores del mercado liberalizado acude a los
mercados de energía para abastecerse de electricidad a través del
comercializador, que ofrece unos precios adaptados a las preferencias de cada
consumidor. Los distribuidores para el suministro regulado y muchos
comercializadores suelen ofertar el máximo precio permitido (los 180 CDEF<I5)
Es una oferta precio aceptante. Su objetivo es asegurar que los consumidores
obtengan la energía que demanda, sea cual sea el precio.
Una parte limitada de los consumidores sólo están dispuestos a tomar
energía si su precio es menor igual a un cierto valor. Son estos consumidores los
que tienen la posibilidad de adaptar sus demandas a los precios del mercado.
Por ejemplo, algunos consumidores industriales. En la curva de demanda del
mercado, estos consumidores representan la parte de la curva con una cierta
pendiente.
Determinación del precio del mercado diario. La casación.
El precio del mercado para una determinada hora del día, se determina
mediante la intersección de la curva de oferta y demanda de electricidad del
mercado para esa hora. OMEL es el responsable de casar oferta y demanda
según un criterio de preferencia económica, ordenando de menor a mayor el
2 Formación de precios en régimen de mercado 15
precio de las ofertas de venta, y en orden inverso las de compra. Las ofertas de
venta cuyo precio resulte inferior al mayor precio aceptado ! el denominado
precio marginal del sistema ! así como las ofertas de compra con un precio
superior, son casadas. Todas las ofertas de venta casadas han sido remuneradas
al precio marginal del sistema, precio que también han pagado las ofertas de
compra casadas. >-3.) 3+#%)*.)-0,'-3')-.)77'(')"-0,'-3')*.)#$.2+%-)01+/%$(.-4)
ya que todas las unidades casadas reciben (del lado de la oferta) y pagan (del
lado de la demanda) un precio uniforme, el que corresponde a la oferta
marginal, independientemente de los precios que cada una de ellas haya
ofertado.
OMEL incorpora al programa base de funcionamiento del mercado diario
los contratos bilaterales físicos, así como la producción de las unidades en
régimen especial que no hayan sido ofertadas en el mercado. A su vez, el
Operador del Sistema (REE) estudia la viabilidad técnica del despacho
económico para garantizar la estabilidad del sistema y, en su caso, procede a
solucionar las restricciones técnicas. Hasta mayo de 2005, REE retiraba e
incorporaba la potencia necesaria para solventar las restricciones siguiendo un
2 Formación de precios en régimen de mercado 16
orden de preferencia económico basado en las ofertas del mercado diario. Esto
#$%6%2',')*%-)3+#%-)*.)"+13.$/.$.12+'-45)>1)#$+(.$)70&'$8)*'*%)?0.)7')$.3+$'*')
de una unidad por limitaciones del sistema no da lugar a compensación, una
gran parte de las unidades de producción eran ofertadas a cero para así evitar
su retirada. En segundo lugar, dado que la energía incorporada para solventar
las restricciones era remunerada según su propia puja, las unidades que
previsiblemente iban a ser acopladas por ese motivo tenían incentivos a elevar
su precio de oferta. Esto daba lugar, por tanto, a distorsiones en el
comportamiento de la oferta. En la actualidad, tanto las unidades de
producción que tienen que ser retiradas como las que pueden ser acopladas
presentan nuevas ofertas que REE utiliza para solventar al menor coste. El
sobrecoste derivado del proceso de resolución de las restricciones técnicas se
reparte entre la energía medida a los consumidores peninsulares. Con
posterioridad a la resolución de las restricciones de red, REE también gestiona
los mercados de servicios complementarios y otros procesos de operación
técnica.
El mercado intradiario
Como se ha dicho el mercado intradiario, está estructurado en seis sesiones
con distintos horizontes de programación, y permite a los agentes ajustar sus
posiciones de compra o venta sobre el programa resultante de los mercados y
procesos anteriores. Las normas que rigen el funcionamiento del mercado
intradiario son similares a las del mercado diario. En particular, el precio que
perciben o pagan las unidades casadas es el mismo en cada uno de los periodos
de casación de cada una de las sesiones.
Quienes pueden presentar ofertas en las diferentes sesiones del mercado
intradiario son:
2 Formación de precios en régimen de mercado 17
Los agentes del mercado que hubieran participado en la sesión
correspondiente de dicho mercado diario de producción.
Las unidades de producción que no han participado en el diario por estar
indisponibles, pero que hubieran recuperado su disponibilidad.
Los titulares de contratos bilaterales que, sin haber participado en el
diario, hayan comunicado la ejecución de los mismos para las horas
comprendidas en la sesión correspondiente del mercado intradiario, y dicha
energía hubiese sido programada por el operador del sistema.
Por último el Operador del Sistema gestiona mercados de operación para
corregir en todo momento los desequilibrios que puedan surgir entre
generación y demanda.
2.2.1.2. Contratos bilaterales
Otra variante de contratación, son los contratos bilaterales físicos, que
permiten a un agente vendedor suministrar a un comprador específico, sin
tener que recurrir al mecanismo del mercado spot de ofertas. Ésta parece ser la
tendencia actual, !coexistencia de un mercado spot voluntario y de contratos
bilaterales físicos!, pero aún sigue bajo discusión si la hipotética libertad de
actuación que estos contratos permiten, compensa la aparente complejidad
regulatoria y organizativa de gestionar un tipo adicional de transacción.
2.2.1.3. Contratos a plazo
Mercados a plazo de electricidad
Comprar la electricidad a plazo tiene como objetivo eliminar el riesgo de las
variaciones del precio en el suministro futuro. En los mercados a plazo de
electricidad se negocia con años, meses, semanas o días de antelación a la
entrega física de la energía, durante un período de tiempo prefijado.
2 Formación de precios en régimen de mercado 18
Al llegar el día anterior a la fecha de suministro o entrega física de la energía
(día D1), los agentes convierten el acuerdo en energía para el día D en el
mercado diario organizado por el Operador del Mercado. Aunque el precio de
intercambio para ellos no es el de la casación sino el acordado en la transacción.
Además, en el muy corto plazo, dentro de las 24 horas anteriores al momento
de la entrega física de la energía, existen otros mercados en los que los agentes
pueden ajustar sus posiciones comerciales y en los que los generadores, y en
ocasiones también la demanda, ofrecen una serie de servicios de gestión técnica
del sistema.
En el largo plazo, los agentes intercambian diferentes tipos de contratos, con
periodos de entrega de distinta duración y en diversos mercados a plazo:
Contratos bilaterales adaptados a las necesidades de los agentes
compradores y vendedores, y con entrega física de la energía o con liquidación
financiera por diferencias (pago/cobro de la diferencia entre el precio del
mercado diario y un cierto valor #'23'*%).1).7)2%13$'3%B)-+1).13$.&')/J-+2')*.)7')
energía).
Contratación a través de mercados organizados, subastas organizadas o
bilateralmente entre los agentes (el mercado OTC ! "%6.$) 3<.) 2%013.$4 !, no
organizado en e que los agentes cierran transacciones a través de intermediarios
o brokers).
Los mercados a plazo cumplen un papel crucial en un mercado liberalizado
desarrollado pues, si son suficientemente líquidos, permiten adaptarse a los
distintos perfiles de riesgo a los que se exponen los agentes compradores y
vendedores, al tiempo que facilitan la competencia en los mercados mayorista y
minorista.
Por ejemplo, un comercializador que quiera entrar a competir en el mercado
minorista de clientes finales deberá adquirir energía para abastecerlos. En
ausencia de mercados a plazo líquidos, tendrá que adquirir toda esta energía en
2 Formación de precios en régimen de mercado 19
el mercado diario, cuyo precio es relativamente volátil. Por tanto, estará
expuesto al riesgo de que el precio de la energía en el mercado diario resulte
más elevado que el exigido originalmente a sus clientes. Sin embargo, si el
comercializador puede contratar a plazo energía a un precio determinado,
podrá realizar ofertas a sus clientes más ajustadas, al no tener que incorporar en
el precio del contrato toda la incertidumbre sobre la variabilidad de los precios
en el mercado diario.
En el caso de los generadores también es importante el mercado a plazo, ya
que éste permite fijar un nivel de ingresos sin riesgo para la cantidad objeto de
contratación.
Para un consumidor que desee estabilizar los pagos por su energía, los
mercados a plazo también resultan interesantes, aunque la mayoría de las veces
las ventajas de dicha contratación se la ofrecen los comercializadores, que
gracias a disponer de una amplia cartera de clientes y de distintos
suministradores y de especializarse en la gestión de riesgos, pueden ofrecer una
cobertura de precios más interesante que la que pueda obtener, normalmente,
un cliente de manera directa.
En general, los mercados a plazo facilitan la gestión del riesgo de variación
de precios en el mercado. La gestión del riesgo de una cartera de activos
eléctricos (generadores o clientes finales) consiste en buscar el conjunto de
contratos que permite alcanzar una determinada rentabilidad sin asumir un
riesgo excesivo. Aquellos agentes que optimicen el conjunto de contratos en su
cartera estarán en disposición de competir por los clientes finales con ventaja,
en el caso de los comercializadores, o de encontrar más oportunidades de
inversión en unidades de generación, en el caso de las empresas de generación.
Los clientes industriales que, a través de la contratación a plazo, consigan unos
precios de la energía más adecuados a los de sus competidores, también
posicionarán su producto de manera más competitiva.
2 Formación de precios en régimen de mercado 20
Sin embargo, es muy importante tener en cuenta que las contrataciones a
plazo no tienen por qué dar lugar a precios más bajos que los del mercado. Las
contrataciones a plazo simplemente son mecanismos para fijar un precio con el
que el comprador y el vendedor se encuentran satisfechos de cara al futuro, de
manera que se estabilicen las corrientes de pagos o cobros para la energía.
Puede ser que, llegado el momento de entrega, el precio del mercado diario sea
superior al pactado en el contrato a plazo. En ese caso, el comprador habrá
sacado más ventaja de la contratación que el vendedor, aunque podría haber
sucedido lo contrario. Lo que es importante es que en el momento de la
contratación a plazo el precio complazca las previsiones de ambas partes y que
se elimine el riego de precios de las dos partes, pues ello induce ventajas para
ambas.
En el caso del mercado eléctrico español, las transacciones en el mercado a
plazo físico, es decir, con obligación de entrega de energía, cubren,
aproximadamente, un tercio de la demanda horaria media. En el mercado
financiero (contratos con liquidación financiera, sin obligación de entrega de
energía), se intercambia un volumen aproximadamente ingual al 15% de la
demanda total.
Mercados a plazo de electricidad en España
Los mercados a plazo de electricidad en España son:
El mercado no organizado de contratos bilaterales, que incluye el mercado
de contratos bilaterales físicos y el mercado financiero OTC.
Las subastas de Emisiones Primarias de Energía.
Las subastas CESUR (Contratos de energía para el suministro de último
recurso).
2 Formación de precios en régimen de mercado 21
El mercado organizado de futuros eléctricos del Mercado Ibérico de
Electricidad (MIBEL), OMIP.
Cada uno de estos mercados está caracterizado por distintos grados de
organización. Nos centraremos, sobre todo, en el mercado organizado (OMIP) y
en el OTC.
El mercado de contratos bilaterales físicos es un mercado no organizado,
en el que los agentes compradores, normalmente los comercializadores y
consumidores finales, y vendedores (generadores, habitualmente) intercambian
bilateralmente contratos diseñados en función de sus necesidades, sin
necesidad de acudir a una institución gestora de un mercado.
El mercado financiero de OTC es otro ejemplo de mercado no organizado
en el que los agentes intercambian, a través de intermediarios, contratos con
liquidación financiera por diferencias (sin entrega física de la energía)
diseñados en función de sus preferencias y sin someterse a reglas de
participación o negociación distintas que las que ellos impongan.
El mercado OMIP es un ejemplo de mercado organizado. En los mercados
organizados la liquidez es facilitada y garantizada por un conjunto de
instituciones que tienden a reducir los costes de transacción. En estos mercados
existen procedimientos de participación explícitos y conocidos por todos los
participantes, que deben firmar contratos de adhesión a las Reglas de Mercado,
aprobadas por la entidad que gestiona el mercado. En el caso del mercado de
futuros OMIP, una entidad privada independiente (OMIP) gestiona un mercado
! de forma similar a como hace OMEL en el caso del mercado diario de
electricidad ! en el que los contratos están estandarizados y los participantes se
adhieren a unas reglas de participación y negociación. Este mercado se ha
creado gracias a los acuerdos entre los Gobiernos español y portugués para el
desarrollo progresivo de un mercado único de electricidad en España y
Portugal.
2 Formación de precios en régimen de mercado 22
Determinación del precio de los contratos a plazo
En los mercados a plazo de electricidad, como en cualquier otro mercado, el
precio de los contratos está determinado por el cruce entre la oferta y la
demanda del mercado, que se producirá según las reglas de cada mercado.
En el mercado organizado OMIP, los vendedores y los compradores hacen
pública sus ofertas de venta y compra, respectivamente, en una plataforma
electrónica gestionada por OMIP. Cuando algún agente encuentra una oferta
interesante en el mercado, puede contratar energía directamente a través de la
plataforma electrónica, mediante un procedimiento de transacción
estandarizado.
En el caso de los contratos bilaterales físicos, son los dos agentes
involucrados quienes, de forma privada y únicamente sujetos a la negociación
bilateral, fijan el precio de la energía en el contrato. El precio de los contratos
financieros OTC se fija de forma parecida, mediante contratos bilaterales entre
las partes a través de un intermediario.
Factores que influyen en el precio a plazo de la electricidad
El precio a plazo de la electricidad depende, fundamentalmente, de las
expectativas de los agentes acerca de la evolución de las principales variables
que afectan al precio del mercado diario y del grado de incertidumbre que
tengan acerca de dichas expectativas.
A la hora de intercambiar energía a plazo, es decir, con entrega dentro de
un tiempo, tanto los vendedores como compradores hacen previsiones sobre la
evolución del precio del mercado diario de electricidad, que depende de
factores de oferta (reservas hidráulicas, precios de los combustibles, previsión
2 Formación de precios en régimen de mercado 23
de producción hidráulica, disponibilidad de las instalaciones, etc.) y de
demanda (laboralidad, estacionalidad, etc.).
Los agentes preparan sus ofertas de venta y de compra de energía a plazo
en función de las expectativas y sobre la evolución de estas variables
fundamentales. Además, incorporan en sus ofertas una prima de riesgo que
refleja la incertidumbre acerca de sus previsiones. Cuando las ofertas de venta y
de compra de los vendedores y de los compradores son razonablemente
similares, porque sus expectativas de cara al futuro lo son, se producirá una
transacción a un precio del que se beneficiarán ambas partes.
El conjunto de precios a los que se podría intercambiar la electricidad en
*+-3+13%-) #7'9%-) /030$%-) -.) 2%1%2.) 2%(%) "20$6') /%$K'$*4) *.) #$.2+%-) *.) la
electricidad. La curva forward cambia constantemente, ya que los agentes
actualizan de forma continua sus expectativas sobre la evolución de los precios.
Cuando los agentes esperan condiciones de mercado futuras que darán lugar a
precios más bajos en el mercado diario que los que se observan en la actualidad,
la curva forward de precios refleja precios a plazo por debajo del precio actual
del mercado diario y suele tener pendiente negativa. A la inversa, cuando las
condiciones esperadas en el futuro son de precios al alza en relación con los
precios actuales, la curva forward de precios refleja precios a plazo por encima
del precio actual del mercado diario y suele tener pendiente positiva.
2.2.1.4. Subastas de capacidad
Descripción
Una de las posibles medidas que puede utilizar el regulador para aumentar
la liquidez del mercado son las subastas de capacidad virtual. Son un
mecanismo que intenta incrementar la liquidez del mercado poniendo a
2 Formación de precios en régimen de mercado 24
disposición del sistema un porcentaje de la capacidad de los agentes.
Básicamente se ofrece la compra de capacidad con flexibilidad horaria.
Con el fin de no saturar el mercado a causa de un exceso de oferta, la
2'#'2+*'*)"%,L.3+6%4)')6.1*.$)-.)-0,'-3').1)6'$+'-)2%16%2'3%$+'-)M8).1)2'*')01')
de ellas, se subastan plazos distintos.
Los compradores adquieren energía a través de estos contratos pero no
intervienen en la operación técnica de la central. La energía adquirida pueden
venderla en el mercado o destinarla a un contrato bilateral o suministrarla a un
cliente final.
En principio no hay una adscripción de centrales ni tecnología a la
capacidad subastada por cada agente. En la práctica, dadas las características
2%12$.3'-)*.)7%-)#$%*023%-8).7)2%(#$'*%$)*.)7%-)(+-(%-).-)"2%(%)-+4)'*?0+$+.$')
la energía procedente de una central de base o de punta.
Productos negociados
Hasta ahora los productos que se han puesto a disposición de las subastas
realizadas han sido:
Opciones de compra horarias. En este caso el comprador oferta en la
subasta la prima de opción (que equivaldría a los costes fijos de la central) y el
vendedor fija el precio de ejercicio (equivalente a los costes variables). El precio
de ejercicio puede ser fijo o estar indexado a precios internacionales de energía.
Pueden ser opciones para energía en base o pico, lo que determinará, a efectos
prácticos, tanto la prima ofertada como el precio del ejercicio.
Contratos en firme. Se oferta un precio por la energía subastada. Suelen
ser contratos de base a largo plazo con cierta modulación de la potencia según
el mes, lo que introduce bastante complejidad al producto ya que el precio
2 Formación de precios en régimen de mercado 25
ofertado también presenta una modulación estacional. En este caso el producto
se asimila a una central de cogeneración.
Requisitos
Los requisitos para que se puedan organizar subastas de capacidad con
ciertas garantías de éxito se clasifican en: requisitos de mercado, requisitos de
funcionamiento y requisitos formales.
Requisitos de mercado. La energía subastada debe ser susceptible de
cobertura en mercados a plazo. Es decir, el comprador de la opción debiera
poder venderla en un mercado OTC, o cerrar un contrato de futuros o un
contrato bilateral para cubrir su posición. Asimismo, el vendedor de la opción
debiera poder cubrir su posición igualmente en el mercado. Esto implica que
debe haber un mercado a plazo con la liquidez suficiente como para garantizar
a los agentes la posibilidad de cubrir o deshacer sus posiciones.
Requisitos de funcionamiento. Para asegurar la participación y hacer las
subastas atractivas deben establecerse unas reglas de funcionamiento claras,
transparentes, públicas y objetivas que ofrezcan seguridad a los posibles
participantes. Debe existir, además, una plataforma informática para las ofertas,
que sea de fácil acceso para todos los participantes. Por último, debe haber una
entidad independiente de nominación que reciba las nominaciones de todos los
compradores, con el fin de asegurar la debida confidencialidad.
Requisitos formales. Los participantes deben cualificarse para poder
participar, lo que implica cumplir unos requisitos mínimos como empresa y
presentar avales y garantías de crédito que pudieran limitar la potencia a
comprar. Al mismo tiempo, resulta importante que el tipo de contratos sea
estándar y conocido, tipo EFET con entrega física, con el fin de facilitar la
participación de los agentes y homogeneizar estas subastas con las que ya están
en marcha en el resto de Europa (EDF, ELECTRABEL, NUON y RWE)
2 Formación de precios en régimen de mercado 26
En conclusión. Las subastas de capacidad son un mecanismo útil para dotar
de mayor liquidez al mercado eléctrico español y corregir, en cierta medida, el
poder de mercado existente, ya que de esta forma se reducen las cuotas de
participación de los agentes dominantes.
Es necesario que el procedimiento de subasta esté bien diseñado para evitar
la destrucción de valor.
El éxito de las subastas va ligado a la existencia de un mercado
"-.201*'$+%4) 2%1) 7+?0+*.9) -0/+2+.13.) 2%(%) #'$') &'$'13+9'$) ') 7%-) '&.13.-) 7')
posibilidad de cubrir o deshacer las posiciones tomadas en la subasta.
Nuevamente este aspecto p'-')#%$)01)(.$2'*%)"#$+('$+%4)1%)('1+#07',7.5
2.2.2 Los mercados de operación gestionados por REE
De acuerdo con lo establecido en el R.D. 1454/2005, los servicios de ajuste
del sistema son:
La resolución de las restricciones técnicas identificadas en los programas
resultantes de la contratación bilateral física y los mercados de producción
(diario e intradiario), así como todas aquellas restricciones técnicas que puedan
presentarse durante la propia operación en tiempo real.
Los servicios complementarios. Los asociados a la regulación frecuencia !
#%3.12+') N$.-.$6'-)#$+('$+'8) -.201*'$+')M) 3.$2+'$+'IB).7)2%13$%7)*.) 3.1-+O1)*.) 7')
red de transporte y la reposición del servicio.
El proceso de gestión de los desvíos entre generación y consumo como
medio imprescindible para garantizar el equilibrio entre la producción y la
demanda, garantizando la disponibilidad en todo momento de las reservas de
regulación requeridas.
2 Formación de precios en régimen de mercado 27
La liquidación de los servicios de ajuste y de la gestión de desvíos
generación ! consumo, desde el 1 de junio de 2006, es realizada por el Operador
del Sistema, junto con la liquidación de los desvíos respecto a programa y del
término de pagos por capacidad asociados a los servicios de disponibilidad e
inversión.
En los siguientes puntos del apartado se analizarán aquellos servicios de
ajuste del sistema que se incluyen dentro del mercado de operación, es decir, la
gestión de desvíos y las regulaciones secundaria y terciaria.
2.2.2.1 Regulación secundaria
El servicio de regulación secundaria es un servicio complementario de
carácter obligatorio gestionado por mecanismos competitivos del mercado que
tiene por objeto el mantenimiento del equilibrio generación ! consumo,
corrigiendo el desvío instantáneo respecto al programa de intercambio en
potencia en la interconexión entre España y Francia, y el desvío de la frecuencia
respecto a su valor de consigna establecido (normalmente 50 Hz). Su horizonte
temporal se extiende desde los 30 segundos hasta los 15 minutos. Permite al
Operador del Sistema disponer de una reserva de capacidad muy flexible !
deben responder en medio minuto en caso de contingencia ! para resolver
desequilibrios significativos entre generación y demanda.
>7)-.$6+2+%)*.)$.&07'2+O1)-.201*'$+').-)%/$.2+*%)#%$)"9%1'-)*.)$.&07'2+O14)!
agrupaciones de centrales con capacidad de prestar el servicio de regulación
secundaria, a requerimiento del Operador del Sistema, con respuesta constante
de tiempo 100 segundos. Hay seis zonas de regulación en el sistema eléctrico
español en la actualidad, agrupando las centrales de generación de Endesa,
Iberdrola, Viesgo, Gas Natural y HC, aunque no todas las unidades de
generación forman parte de una zona de regulación, quedando limitada su
2 Formación de precios en régimen de mercado 28
participación en este servicio aquellas que el Operador del Sistema considera
cumplen los requisitos para realizarlo adecuadamente.
Este servicio es retribuido por dos conceptos: disponibilidad (banda) y
utilización (energía).
P'*')*J'8).7)Q#.$'*%$)*.7)=+-3.(').-3+(')7')"$.-.$6')*.)$.&07'2+O14)N3'13%)')
subir como a bajar) para la programación del día siguiente, en términos de
potencia, necesaria para asegurar el suministro en condiciones de fiabilidad en
caso de contingencia, después de la celebración del mercado diario y del de
restricciones. Las empresas generadoras, con carácter voluntario, presentan sus
ofertas de capacidad disponible (antes de las 16 horas del día D1), asignándose
la banda requerida por el Operador del Sistema entre éstas utilizando un
criterio de mínimo coste. El coste marginal de la banda de potencia para cada
hora marca el precio con el que se remunera toda la capacidad casada en este
mercado.
La energía de regulación secundaria utilizada como consecuencia del
seguimiento en tiempo real de los requerimientos de regulación se valora al
precio marginal de la energía de regulación terciaria que hubiera sido necesario
programar en cada hora, tanto a subir como a bajar, para sustituir este uso neto
de energía secundaria.
2 Formación de precios en régimen de mercado 29
Regulación secundaria en 2007. Fte: REE.
Banda de regulación secundaria. Precios mensuales y potencia en 2007.
Precios mensuales y energías en 2007.
2 Formación de precios en régimen de mercado 30
2.2.2.2 Regulación terciaria
Es el mecanismo que tiene por objetivo que, en caso de que se haga uso de la
banda secundaria por causa de una contingencia, pueda restituirse la reserva de
banda (reserva de regulación secundaria que haya sido utilizada) y el equilibrio
generación ! demanda en periodos inferiores o iguales a la hora. Este servicio es
obligatorio para las unidades de producción que pueden ofrecerlo. Así, todas
las unidades de generación del sistema que pueden variar su producción en un
tiempo no superior a 15 minutos y mantener la variación durante 2 horas deben
ofrecer toda su capacidad excedentaria (no contratada en otros mercados o
servicios) al Operador del Sistema.
El mercado de energía terciaria se celebra a última hora del día anterior al
despacho. En él, los generadores envían ofertas por la variación máxima de su
potencia a subir y a bajar. El precio de la energía terciaria a subir y a bajar es el
precio marginal resultante de estos dos mercados. Sin embargo, al contrario que
en el caso de la reserva secundaria, los generadores sólo perciben ingresos por
este servicio si es utilizado por el Operador del Sistema.
La reserva terciaria se activa de manera manual, subiendo o bajando la
potencia de las centrales de generación o consumo de bombeo que hubieran
ofertado al menor precio, en el caso de energía a subir, o al mayor precio de
recompra de energía en el caso de energía a bajar respetando siempre la
asignación del servicio, las posibles limitaciones por seguridad en el sistema o
indisponibilidades de generación comunicadas por el sujeto.
2 Formación de precios en régimen de mercado 31
Regulación terciaria en 2007
Precios medios mensuales y energías en 2007
2 Formación de precios en régimen de mercado 32
2.2.2.3 Gestión de desvíos
La gestión de desvíos tiene por objeto resolver los desvíos entre generación y
consumo que pudieran aparecer con posterioridad al cierre de cada sesión del
mercado intradiario y hasta el inicio de la siguiente sesión. Cumple una función
de nexo entre la regulación terciaria y los mercados diarios, dotando a REE de
un mecanismo, gestionado mediante mecanismos competitivos de mercado, de
mayor flexibilidad para poder solventar los desequilibrios entre generación y
demanda, sin poner en riesgo la disponibilidad de las reservas de regulación
secundaria y terciaria requeridas.
Los agentes de producción de energía eléctrica comunican al Operador del
Sistema las previsiones de desvíos originados por distintas causas. Esta
información, junto con las variaciones en la previsión de producción eólica que
realiza el Operador del Sistema, es analizada. En el caso de que el conjunto de
los desvíos previstos durante el periodo entre dos mercados intradiarios
superen los 300 MW en media horaria, se convoca el mercado de desvíos.
La asignación se basa en las ofertas de incremento o reducción de generación
y de consumo de bombeo presentadas a dicha convocatoria, atendiendo a los
requerimientos de la misma. La valoración de las modificaciones programadas
para la resolución de los desvíos se realiza al precio marginal de las ofertas
asignadas en cada periodo horario, garantizando así la aplicación de criterios de
mínimo coste en la aplicación del servicio.
El sobrecoste originado por los desvíos es posteriormente liquidado a los
agentes causantes de los mismos. Si el desvío neto del sistema fue a subir
(consumo real menor que la oferta) se penaliza con un sobrecoste a los agentes,
en el lado de la demanda o en el lado de la oferta, que tuvieron un desvío en la
misma dirección que el sistema (construyendo, por tanto, al coste de los
2 Formación de precios en régimen de mercado 33
servicios necesarios para resolverlo). Los agentes que se desviaron en contra del
sistema, por el contrario, no son penalizados.
En tiempo real (15 minutos antes del despacho), el Operador del Sistema
tiene a su disposición, además de los servicios de regulación automáticos
(reserva primaria) y de los mecanismos de resolución de restricciones en tiempo
real, mecanismos de emergencia por los que podría obligar, en caso de extrema
necesidad para el sistema, a determinadas unidades de generación a modificar
sus niveles de producción.
Gestión de desvíos en 2007
2 Formación de precios en régimen de mercado 35
El esquema siguiente representa los pasos seguidos (y que se han ido
explicando en los puntos anteriores) hasta la obtención del programa horario
operativo final.
2 Formación de precios en régimen de mercado 36
2.3 Accesos. Peajes según el R.D. 1164/2001
La liberación del sector permitió que, de forma gradual, los consumidores
pudieran elegir libremente a su suministrador, lo que significó la aparición de
una nueva actividad competitiva, la comercialización. Cuando un consumidor
opta por esta modalidad, el precio que ha de pagar al comercializador se
estructura en dos componentes ! la energía (contratada a un suministrador o
directamente adquirida en el mercado) y el acceso a las redes (para lo cual
existe la tarifa de acceso o peaje).
Energía contratada al comercializador. El consumidor elige libremente el
comercializador que le suministrará la energía, negociando con éste el precio y
las condiciones de la misma. Los comercializadores compiten entre sí por captar
consumidores, constituyendo así el llamado mercado minorista.
Tarifa de acceso. El transporte y la distribución (las redes) permanecen bajo
un esquema regulado por ser actividades que, dadas sus características
intrínsecas, son monopolios naturales. Así, los costes de las redes son
repercutidos a los consumidores a través de las tarifas de acceso. Éstas son
precios fijados por el regulador y revisados de acuerdo con la metodología
aprobada en la normativa.
Los componentes de costes de las tarifas de acceso son:
2 Formación de precios en régimen de mercado 37
2.3.1. Tipos de tarifa. Horas tipo. Parámetros
En el Real Decreto 1164/2001, del 26 de octubre, se establecen las tarifas de
acceso a las redes de transporte y distribución de energía eléctrica.
Posteriormente, en la Orden ITC/2794/2007, de 27 de septiembre se revisan las
tarifas eléctricas y se introducen modificaciones sobre el R.D. 1164/2001. Estos
cambios ya aparecen reflejados en toda la exposición de la normativa.
Definición de las tarifas de acceso
En este RD se distinguen dos grandes grupos de tarifa en función del nivel
de tensión al que se haga la acometida. Estos niveles son los siguientes:
a) Tarifas de baja tensión. Se aplican a los suministros efectuados a
tensiones no superiores a 1 kV.
1. Tarifa 2.0A: tarifa simple para baja tensión.
2. Tarifa 3.0A: tarifa general para baja tensión.
b) Tarifas de alta tensión. Se aplican a los suministros efectuados a
tensiones superiores a 1 kV.
1. Tarifa 3.1A: tarifa específica de tres períodos para tensiones de 1 a
36 kV.
2. Tarifa 6: tarifas generales de alta tensión.
2 Formación de precios en régimen de mercado 38
Condiciones de aplicación de cada una de las tarifas
Tarifa 2.0DHA. Se aplicará a cualquier suministro en baja tensión, con
potencia contratada no superior a 15 kWy discriminación horaria día/noche.
Tarifa 3.0A. Se podrá aplicar a cualquier suministro de baja tensión.
Tarifa 3.1A. Tarifa de tres períodos para tensiones de 1 a 36 kV con potencia
contratada en todos los períodos tarifarios igual o inferior a 450 kW.
Tarifa 6. Las tarifas generales de alta tensión son de aplicación a cualquier
suministro en tensiones comprendidas entre 1 y 36 kV con potencia contratada
en alguno de los periodos tarifarios superior a 450 kW y a cualquier suministro
en tensiones superiores a 36 kV.
La Tarifa 6 se distribuye por 5 niveles de tensión y está basada en 6 periodos
tarifarios en que se dividen la totalidad de las horas anuales.
TARIFAS EN FUNCIÓN DE LA TENSIÓN DE SERVICIO
Nivel de tensión Tarifa
1kV y 36kV 6.1
36kV y 72,5kV 6.2
72,5kV y 145kV 6.3
145kV 6.4
Conexiones internacionales 6.5
2 Formación de precios en régimen de mercado 39
Periodos tarifarios
Para cada una de las modalidades de tarifa enumeradas anteriormente se
definen una serie de periodos tarifarios. En función de la tarifa y el periodo, el
coste de la energía consumida tendrá un valor u otro. Estos periodos son los
siguientes.
El objetivo de establecer varios periodos tarifarios (cada uno con costes
distintos) es incentivar un perfil de demanda más plano a lo largo del año. No
es lo mismo para el sistema una curva de carga poco plana que una plana,
aunque la energía total consumida (integral de la curva de carga) sea idéntica.
De esta manera, a los periodos de mayor demanda se les asigna precios
superiores en las componentes reguladas y a los periodos de menor demanda,
precios menores.
1. Modalidad de dos períodos. Tarifa de acceso de baja tensión 2.0.DHA. Se
considerarán como horas punta y horas valle en horario de invierno y horario
de verano las siguientes:
Invierno
Punta Valle
12 ! 22 0 ! 12
22 ! 24
Verano
Punta Valle
13 ! 23 0 ! 13
23 ! 24
2. Modalidad de tres periodos. Aplicable a las tarifas 3.0A para baja tensión
y a la tarifa 3.1A de alta tensión. La duración de cada periodo será la siguiente.
2 Formación de precios en régimen de mercado 40
Período horario Duración (horas/día)
Punta 4
Llano 12
Valle 8
Las horas consideradas de punta, llano y valle se muestran en la siguiente
tabla, divididas por zonas. Cada zona abarca a una serie de Comunidades
Autónomas.
Zona Invierno Verano
Punta Llano Valle Punta Llano Valle
1 1822 818
2224
08 1115 811
1524
08
2 1822 818
2224
08 1822 818
2224
08
3 1822 818
2224
08 1115 811
1524
08
4 1923 01
919
2324
19 1115 911
1524
01
19
Las zonas en las que se divide el mercado eléctrico nacional serán las
relacionadas a continuación e incluyen las Comunidades Autónomas que se
indican:
Zona 1: Península.
2 Formación de precios en régimen de mercado 41
Zona 2: Baleares.
Zona 3: Canarias.
Zona 4: Ceuta y Melilla.
3. En la modalidad de seis periodos se debe distinguir el tipo de día. En
función del tipo de día y de las horas del día se puede determinar el periodo
tarifario en el que se está trabajando.
El año eléctrico se divide en los siguientes tipos de días:
Tipo A: de lunes a viernes no festivos de temporada alta con punta de
mañana y tarde.
Tipo A1: de lunes a viernes no festivos de temporada alta con punta de
mañana.
Tipo B: de lunes a viernes no festivos de temporada media con punta de
mañana.
Tipo B1: de lunes a viernes no festivos de temporada media con punta de
tarde.
Tipo C: de lunes a viernes no festivos de temporada baja, excepto agosto para
el sistema peninsular, abril para el sistema balear y mayo para los sistemas de
Canarias, Ceuta y Melilla.
Tipo D: sábados, domingos, festivos y agosto para el sistema peninsular,
abril para el sistema peninsular, abril para el sistema balear y mayo para los
sistemas de Canarias, Ceuta y Melilla.
Se consideran a estos efectos como días festivos los de ámbito nacional
definidos como tales en el calendario oficial del año correspondiente, con
exclusión de los festivos sustituibles, así como de los que no tienen fecha fija.
2 Formación de precios en régimen de mercado 42
Las temporadas alta, media y baja a las que se ha hecho referencia serán las
siguientes:
a) Para la península:
1ª. Temporada alta con punta de mañana y tarde: diciembre, enero y
febrero.
2ª. Temporada alta con punta de mañana: 2ª quincena de junio y julio.
3ª. Temporada media con punta de mañana: 1ª quincena de junio y
septiembre.
4ª. Temporada media con punta de tarde: noviembre y marzo.
5ª. Temporada baja: abril, mayo, agosto y octubre.
b) Para Baleares:
1ª Temporada alta con punta de mañana y tarde: junio, julio, agosto y
septiembre.
2ª Temporada media con punta de tarde: enero, febrero, mayo y octubre.
3ª Temporada baja: marzo, abril, noviembre y diciembre.
c) Para Canarias:
1ª Temporada alta con punta de mañana y tarde: septiembre, octubre,
noviembre y diciembre.
2ª Temporada media con punta de mañana: julio y agosto.
3ª Temporada media con punta de tarde: enero y febrero.
4ª Temporada baja: marzo, abril, mayo y junio.
2 Formación de precios en régimen de mercado 43
d) Para Ceuta:
1ª Temporada alta con punta de mañana y tarde: diciembre, enero,
febrero y agosto.
2ª Temporada media con punta de mañana: julio y septiembre.
3ª Temporada media con punta de tarde: marzo y noviembre.
4ª Temporada baja: abril, mayo, junio y octubre.
e) Para Melilla:
1ª Temporada alta con punta de mañana y tarde: enero y febrero.
2ª Temporada alta con punta de mañana: julio y agosto.
3ª Temporada media con punta de mañana: junio y septiembre.
4ª Temporada media con punta de tarde: diciembre y marzo.
5ª Temporada baja: abril, mayo, octubre y noviembre.
Se consideran a estos efectos como días festivos los de ámbito nacional
definidos como tales en el calendario oficial del año correspondiente, con
exclusión de los festivos sustituibles, así como de los que no tienen fecha fija.
Los horarios a aplicar en cada período tarifario se muestran en las siguientes
tablas. Como se puede observar, una vez que hemos determinado el tipo de día
en el que nos encontramos, a partir de la hora a la que corresponda el dato de
energía consumida, podremos determinar el período tarifario al que pertenece
la energía medida en dicha hora. La composición de los periodos tarifarios es la
siguiente.
2 Formación de precios en régimen de mercado 44
Periodo 1. Comprende 6 horas diarias de los días tipo A y 8 horas diarias de
los días tipo A1.
Periodo 2. Comprende 10 horas diarias de los días tipo A y 8 horas diarias
de los días tipo A1.
Periodo 3. Comprende 6 horas diarias de los días tipo B y B1.
Periodo 4. Comprende 10 horas diarias de los días tipo B y B1.
Periodo 5. Comprende 16 horas diarias de los días tipo C.
Periodo 6. Resto de horas no incluidas en los anteriores y que comprende: 8
horas de los días A y A1, 8 horas de los días tipo B y B1, 8 horas de los días tipo
C y 24 horas de los días tipo D. Península
Período
tarifario Tipo de día
Tipo A Tipo A1 Tipo B Tipo B1 Tipo C Tipo D
1 1013
1821
1119
2 810
1318
2124
811
1924
3 915 1622
4 89
1524
816
2224
5 824
6 08 08 08 08 08 024
Baleares y Canarias
Período
tarifario Tipo de día
2 Formación de precios en régimen de mercado 45
Tipo A Tipo A1 Tipo B Tipo B1 Tipo C Tipo D
1 1114
1821
1119
2 811
1418
2124
811
1924
3 915 1622
4 89
1524
816
2224
5 824
6 08 08 08 08 08 024
Ceuta y Melilla
Período
tarifario Tipo de día
Tipo A Tipo A1 Tipo B Tipo B1 Tipo C Tipo D
1 1215
2023
1119
2 812
1520
2324
811
1924
3 915 1723
4 89
1524
817
2324
5 824
6 08 08 08 08 08 024
2 Formación de precios en régimen de mercado 46
Tarifas de acceso
Las tarifas de acceso se componen de un término de facturación de potencia
(término fijo) y un término de facturación de energía activa (término variable)
además de un término por facturación de energía reactiva, en el caso de que
deba facturarse.
Término de facturación de potencia.
Para cada uno de los periodos tarifarios definidos anteriormente, se
contratará una potencia aplicable durante todo el año.
Nota: En todas las tarifas se exige que las potencias contratadas en los
diferentes períodos sean tales que la potencia contratada en un período tarifario
(Pn+1) sea siempre mayor o igual que la potencia contratada en el período
tarifario anterior (Pn).
El valor de la potencia contratada por período se elige de tal manera que se
consiga satisfacer la demanda necesaria de forma óptima, es decir, con el
mínimo coste posible para el comprador. En el caso de que en alguna hora el
máximo de las potencias medidas sea superior a la potencia contratada,
deberán facturarse unos excesos de potencia, definidos más adelante.
El término de potencia a facturar presenta la siguiente expresión:
fi
ni
ipi PtFP !
1
Donde:
Pfi. Potencia a facturar en el período tarifario i, expresada en kW.
2 Formación de precios en régimen de mercado 47
tpi. Precio anual del término de potencia del período tarifario i.
Se facturará mensualmente, dividiendo el resultado obtenido de la fórmula
anterior por doce.
Medición de la potencia demandada.
Es necesario tomar medidas en todo momento de la potencia demanda para
determinar el valor de la potencia a facturar (Pfi), pues en el caso de las Tarifas
3.0A y 3.1A no es la contratada. Además también deben registrase estas
medidas para facturar, en caso de que los haya, los excesos de potencia.
El control y medición de la potencia demandada se realizará de distinto
modo para cada uno de los diferentes tipos de tarifas.
Tarifa 2.0A. El control se realiza mediante la instalación del Interruptor de
Control de Potencia (ICP) tarado al amperaje correspondiente a la potencia
contratada. En la modalidad de 2 períodos (tarifa nocturna) el control mediante
ICP se realiza para la potencia contratada en el período diurno (punta llano)
Tarifa 3.0A y 3.1A. Se registra la potencia cuartohoraria máxima
demandada en cada período tarifario, punta, llano o valle del periodo de
facturación.
Tarifa 6. El control de la potencia demandada se realiza por medio de las
mediciones cuarto horarias de los equipos de medida.
Determinación de la potencia a facturar en cada período tarifario (Pfi).
El valor que se toma de Pfi para luego introducirse en (1) se determina, para
cada tipo de tarifa, de la forma siguiente:
2 Formación de precios en régimen de mercado 48
Tarifa 2.0A. La potencia a facturar en cada período tarifario es la potencia
contratada.
Tarifa 2.0NA. La potencia a facturar será la potencia contratada
correspondiente a las horas nocturnas.
Tarifas 3.0A y 3.1A. La potencia a facturar a considerar en (1) se calculará de
la forma que se establece a continuación:
a) Si la potencia máxima demandada, registrada en el período de
facturación, estuviese dentro del 85% al 105% de la contratada, dicha
potencia registrada será la potencia a facturar (Pfi).
b) Si la potencia máxima demandada, registrada en el período de
facturación, fuese superior al 105% de la potencia contratada, la potencia
a facturar en el período considerado (Pfi) será igual al valor registrado
más el doble de la diferencia entre el valor registrado y el valor
correspondiente al 105% de la potencia contratada.
c) Si la potencia máxima demandada en el período a facturar fuese inferior
al 85% de la potencia contratada, la potencia a facturar (Pfi) será igual al
85% de la citada potencia contratada.
Tarifa 6. La potencia a facturar en cada período tarifario será la potencia
contratada.
Excesos de potencia.
En el caso de que la potencia demandada sobrepase en cualquier periodo la
potencia contratada en el mismo, se facturarán todos y cada uno de los excesos
registrados en cada período, de acuerdo con la siguiente expresión:
6
1
i
ieiiEP AcKF
2 Formación de precios en régimen de mercado 49
Donde:
Ki . Coeficiente que tomará los siguientes valores dependiendo del período
tarifario i:
Periodo 1 2 3 4 5 6
Ki 1 0.5 0.37 0.37 0.37 0.17
c = 1,4064 CDRF5
Aei. Se calculará de acuerdo con la siguiente fórmula:
nj
j
PciPdj1
2)(
Donde:
Pdj. Potencia demandada en cada uno de los cuartos de hora del periodo i en
que se haya sobrepasado Pci (kW).
Pci. Potencia contratada en el periodo i en el período considerado (kW).
Los excesos de potencia se facturan mensualmente pero únicamente en los
meses en que se hayan producido.
Término de facturación de energía.
2 Formación de precios en régimen de mercado 50
Energía activa.
El término de facturación de energía activa se obtiene de la siguiente forma:
ni
ieii tEFE
1
Donde:
Ei. Energía consumida en el período tarifario i, expresada en kWh.
tei. Precio del término de energía del período tarifario i.
Este término se factura mensualmente, en función de lo que se haya
consumido en el mes.
Energía reactiva.
El término de facturación de energía reactiva se aplica a cualquier tarifa
exceptuando la tarifa simple de de baja tensión (2.0A), el período 3 para las
tarifas 3.0A y 3.1A y el período 6, para las tarifas 6, siempre que el consumo de
energía reactiva exceda el 33% del consumo de activa durante el período de
facturación considerado ( 95,0cos ) y únicamente afectará a dichos excesos.
Se debe disponer de un contador de energía reactiva instalado para su
determinación.
2 Formación de precios en régimen de mercado 51
Estos son todos los términos que se facturarán como tarifas de acceso. Como
conclusión, se muestra la expresión de las tarifas de acceso a facturar en un mes,
por ejemplo.
EreactivaFEExcesosFPCoste12
En esta última expresión se incluyen los términos de: facturación de
potencia, excesos de potencia y energía consumida en el mes que nos ocupa.
Tarifas eléctricas
Las últimas tarifas eléctricas aprobadas, del 28 de diciembre de 2007, de la
Orden ITC/3860/2007 se adjuntan a continuación. Los precios no incluyen ni el
impuesto eléctrico ni el IVA.
Precios de los términos de potencia y energía activa de las tarifas de baja tensión.
2 Formación de precios en régimen de mercado 52
Precios de los términos de potencia y energía activa de las tarifas de acceso de alta
tensión.
Término de facturación de energía reactiva (Artículo 9.3 del Real Decreto
1164/2001)
2 Formación de precios en régimen de mercado 53
2.4 Medida
La Ley 54/1997, de 27 de noviembre, del Sector Eléctrico, introdujo mecanismos
de competencia en su funcionamiento cuya aplicación exige, de modo necesario, la
implantación de un sistema de medidas homogéneo y efectivo de los tránsitos de
energía entre las diversas actividades eléctricas. En el artículo 14 de la Ley del
Sector eléctrico se establece la separación entre las actividades eléctricas reguladas
(gestión económica y técnica del sistema, transporte y distribución) y no reguladas
(generación y comercialización). Con el fin de permitir la liquidación de la energía
entre las diferentes actividades eléctricas separadas en la nueva ordenación del
sistema eléctrico, surge la necesidad de modificar los criterios de medición de la
energía existentes hasta ese momento, basados en el establecimiento de fronteras
entre los subsistemas eléctricos.
Es por ello que, primero en el RD 2018/19979, se prevé un sistema de medidas
eléctricas compuesto por determinados equipos de medida, comunicaciones y
sistemas informáticos que permiten la obtención y el tratamiento de la información
relativa a la energía intercambiada entre las diferentes actividades eléctricas. Este
mismo reglamento establece la instalación de nuevos equipos de medida en las
fronteras entre las diferentes actividades de generación, transporte y distribución,
en los límites de las zonas de distribución y en las interconexiones internacionales.
Asimismo, será obligatoria su implantación en el punto de conexión a la red de los
consumidores cualificados. De esta manera, el Reglamento pretende establecer un
régimen homogéneo de medidas, con la finalidad de garantizar que la libre
competencia se desarrolle en igualdad de condiciones para todos los agentes del
Sistema Eléctrico Nacional.
La ley establece una serie de normas y responsabilidades a cumplir por cada
uno de los agentes del sistema. Se refieren a quiénes son responsables de cada
9 RD 2018/1997 de 26 de diciembre, por el que se aprueba el Reglamento de Puntos de Medida de los
Consumos y Tránsitos de Energía Eléctrica.
2 Formación de precios en régimen de mercado 54
equipo y cuáles son estas responsabilidades (responsabilidad del propio equipo,
calibración y verificación de los aparatos, sustitución de los mismos, etc.). Al
mismo tiempo se determinan las características que deben tener los esquipos y los
medios y protocolos de comunicación.
Desde el punto de vista de los consumidores cualificados, algunas de sus
responsabilidades son:
El cliente es responsable de los equipos que miden su consumo.
El responsable de un equipo de medida lo será de su instalación y de su
mantenimiento y operación, sin perjuicio de que pueda contratarlos con terceros.
El responsable de cada equipo de medida lo será, igualmente, de poner la
medida en correctas condiciones a disposición del operador del sistema en el
interfaz de acceso a red, para su registro en el concentrador principal de medidas
eléctricas.
El responsable de cada equipo solicitará al operador del sistema que efectúe la
lectura local o remota.
El responsable de un equipo de medida o, en su caso, el propietario de la
instalación de red donde éste se instale, deberá garantizar el acceso físico al mismo
del operador del sistema y de los demás participantes en la medida.
En relación a las características que deben tener los equipos de medida, desde
un principio se regula se exige su normalización y el cumplimiento de todos los
requisitos exigidos por las disposiciones sobre los elementos de red y en materia de
seguridad eléctrica y en los reales decretos publicados, desde 1997 hasta ahora, a
este respecto.
2.4.1 Equipos de medida
Se analiza a continuación, y más en detalle, la actual legislación de los
equipos de medida.
2 Formación de precios en régimen de mercado 55
En primer lugar deben agruparse los clientes en dos tipos de grupos de
acuerdo a la energía intercambiada anualmente y a la potencia contratada.
Dentro de cada uno de los grupos hay tipos de clientes, siendo un total de cinco
los existentes.
Clientes con conexión y medida en alta tensión (AT):
Tipo 1. Clientes cuyo anual es mayor o igual a 5 GWh o cuya potencia
contratada sea mayor o igual a 10 MW.
Tipo 2. Clientes cuya potencia contratada sea mayor o igual a 450 kW.
Tipo 3. Clientes cuya potencia contratada sea menor a los 450 kW.
Clientes con conexión en baja tensión (BT) o en AT y medida en BT:
Tipo 4. Clientes cuya potencia contratada sea mayor que 15kW.
Tipo 5. Clientes cuya potencia contratada sea menor o igual que 15 kW.
Definición de instalación y equipos de medida
Se entiende por instalaciones y equipos de medida el conjunto formado por
los transformadores de medida, cableado, relés auxiliares, registradores,
software y todo el equipo auxiliar necesario para garantizar la obtención de la
medida con el grado de precisión adecuado.
2 Formación de precios en régimen de mercado 56
Reglamentación
La reglamentación en vigor es distinta para cada uno de los distintos tipos de
clientes.
Clientes tipo 1, 2 y 3
RPM. RD 385/2002 de 26 de abril, modificado parcialmente por
disposición adicional primera del RD 1433/2002 de 27 de diciembre.
ITCs complementarias. Orden del 12 de abril de 1999.
Clientes tipo 4 y 5
RD 1433/2002 de 27 de diciembre sobre requisitos de medida en BT.
RD 1435/2002 de 27 de diciembre sobre condiciones básicas de los
contratos de adquisición de energía y ATR (peajes) en BT.
Acuerdo sectorial sobre características de los equipos necesarios.
Ausencia de marco legal definido.
En cuanto a RPM e ITCs la reglamentación para cada uno de los tipos de
clientes es la siguiente (pequeño guión de las ideas más importantes):
Tipo 1 y 2:
Instalación de equipos de medida obligatoria y previa a la salida a
ML.
Registro de 2 magnitudes de activa y 4 de reactiva con detalle horario.
Registro de los datos precisos para el cálculo de ATR.
Comunicación remota obligatoria.
2 Formación de precios en régimen de mercado 57
Canal de comunicación local RS232 o puerto óptico.
Equipo redundante o comprobante para tensiones mayores o iguales
a 36kV.
Visor para interrogación directa por teclado.
Tipo 3:
Instalación de equipos de medida obligatoria y previa a la salida a
ML.
Registro mínimo de 1 magnitud de activa y 2 de reactiva con detalle
horario.
Registro de los datos precisos para el cálculo de ATR.
Comunicación remota optativa.
Canal de comunicación local por puerto óptico.
Visor para interrogación directa por teclado.
ITCs en borrador, no aprobadas oficialmente.
Tipo 4:
Permitido el acceso al ML sin equipos de medida reglamentarios
instalados.
Equipos de medida no se encuentran definidos en detalle por la
inexistencia de ITCs. Lo que hay es un acuerdo sectorial.
Deben registrar la energía al menos en 3 periodos coincidentes con los
del ATR.
2 Formación de precios en régimen de mercado 58
Pueden instalarse equipos de medida superiores con registro de hasta
6 periodos o incluso detalle horario, lo que supone un sobrecoste.
Requiere la instalación de ICP o maxímetro.
Tipo 5:
No requiere sustitución de los equipos de medida.
Requiere instalación de ICP. Puede solicitarse a la distribuidora, que
tiene obligación de realizarlo.
Requisitos técnicos de los equipos de medida. Se representan en la siguiente tabla
las clases de precisión según el tipo de cliente.
Tipo 1 Tipo2 Tipo 3 Tipo 4 Tipo 5
Transformadores
de tensión
0.2 0.5 0.5 n/a n/a
Transformadores
de intensidad
0.2S 0.5S 0.5S n/a n/a
Contadores de
activa
0.2S 0.5S 1 1 2
Contadores de
reactiva
0.5 1 2 2 3
Deberes (responsabilidades) y derechos del cliente. En la introducción de este
capítulo ya se enumeraron algunas de las obligaciones de los consumidores
cualificados. Deben instalar los equipos que miden su consumo. Al mismo
2 Formación de precios en régimen de mercado 59
tiempo deben mantener los esquipos y velar por el cumplimiento de los
requisitos legales.
Asimismo, pueden contratar los diferentes servicios de los que es
responsable y alquilar los equipos que necesiten.
Responsabilidades de la distribuidora. Se enumeran a continuación sus
deberes: leer los datos para la facturación del ATR y para la liquidación del
(.$2'*%B)#%1.$)')*+-#%-+2+O1)*.)7'-)2%(.$2+'7+9'*%$'-).-3%-)*'3%-)'13.-)*.)S;)
horas desde su recepc+O1B) ('13.1.$) .7) +16.13'$+%) *.) 7%-) #013%-) *.) (.*+*')
'230'7+9'*%B)6.7'$)#%$).7)20(#7+(+.13%)*.)7')$.&7'(.13'2+O1B)'7?0+7'$)'7)27+.13.)
7%-) .?0+#%-) *.) (.*+*') $.&7'(.13'$+%-) -+) A-3.) 7%-) -%7+2+3'B) 2'$&'$) 7'-) 27'6.-) M)
programar el registrador y, por último, instalar los equipos de control de
potencia (ICPs) si el cliente lo solicita.
Políticas de instalación de equipos de medida
Actualmente, las comercializadoras pagan el alquiler del equipo y lo pagan
al cliente. Se evitan problemas ante cambios de comercializadoras.
2.4.2 Coste
Durante el periodo de prácticas se tuvo la posibilidad de estudiar y
comparar distintos contratos ofrecidos por varias comercializadoras. En todos
ellos, el coste de los equipos se correspondía con el alquiler de los aparatos. Es,
por tanto, un coste fijo que se carga al cliente dentro de la factura mensual.
En el RD 1634/2006 se enuncia lo siguiente: el precio de los alquileres de los
equipos de medida es el que se detalla en el Anexo II del presente RD. El precio
medio de los alquileres de los contadores, considerando no solo el precio del
propio equipo sino también los costes asociados a su instalación y verificación
así como a la operación y el mantenimiento.
2 Formación de precios en régimen de mercado 60
2.5 Coste regulado de garantía de potencia
Como se indicó al comienzo de este capítulo, una de las formas en que los
generadores pueden recuperar sus costes fijos es mediante los pagos por
capacidad. Actualmente no recibe esta denominación sino que se conoce como
garantía de potencia. Son pagos regulados que reciben los generadores como
contribución a la recuperación del coste fijo que las centrales han de recuperar a
través del margen de mercado, lo que hace que el número de horas al año de
déficit de capacidad sea menor.
En la Orden de 17 de diciembre de 1998 por la que se modifica la de 29 de
diciembre de 1997, que desarrolla algunos aspectos del Real Decreto 2019/1997,
de 26 de diciembre, por el que se organiza y regula el mercado de producción
de energía eléctrica, se establecen ciertos derechos y obligaciones relativos a
pagos y cobros de la garantía de potencia.
2 Formación de precios en régimen de mercado 61
Sujetos con derecho a cobro por garantía de potencia
De acuerdo con el artículo 24 del RD 2019/1997, de 26 de diciembre,
tendrán derecho al cobro por garantía de potencia las unidades de producción
de energía eléctrica que presenten ofertas en los mercados de energía eléctrica
con entrega física así como las unidades de producción de energía eléctrica por
la parte de la potencia vinculada al cumplimiento de un contrato bilateral con
entrega física, siempre que tales unidades de producción acrediten sus
disponibilidad en los términos recogidos en el apartado 3 de este mismo
artículo.
Por el contrario, no tendrán derecho al cobro por garantía de potencia las
importaciones de energía eléctrica realizadas por agentes externos que se
integran en el mercado de producción ni la energía procedente de instalaciones
de producción en régimen especial que se integre en el mercado de producción
sin presentación de ofertas, ni la parte de la energía generada vinculada al
cumplimiento de un contrato bilateral físico.
Sujetos obligados al pago de garantía de potencia
Todos los distribuidores, comercializadores, consumidores cualificados y
agentes externos estarán obligados al pago por garantía de potencia por la
energía que adquieran en el mercado de producción.
No estarán obligados al pago por garantía de potencia los sujetos que
adquieran energía vinculada a un contrato bilateral físico, ni los productores
por la energía correspondiente al autoconsumo de producción y al consumo de
bombeo.
2 Formación de precios en régimen de mercado 62
Importe a pagar
Es en el RD 1634/2006, de 29 de diciembre, por el que se establece la tarifa
eléctrica a partir del 1 de enero de 2007, donde se regulan los pagos por garantía
de potencia.
El cobro por garantía de potencia será mensual y se obtendrá como el
producto de una constante, que dependerá del tipo de tarifa, por la energía
demandada en barras de central. Tanto el valor de las constantes (precio unitario
por garantía de potencia) en función del tipo de tarifa, como el procedimiento
para calcular la energía en barras de central se encuentran recogidos en este
Real Decreto.
Precio unitario por garantía de potencia. Toman los siguientes valores,
expresados en CDRF<5
Energía adquirida por los clientes acogidos a tarifas de acceso de seis
periodos10:
Periodo 1. X1 = 0.007934
Periodo 2. X2 = 0.003662
Periodo 3. X3 = 0.002441
Periodo 4. X4 = 0.001831
Periodo 5. X5 = 0.001831
Periodo 6. X6 = 0.000000
10 En nuestros cálculos serán los precios que verdaderamente interesarán, debido a que únicamente
trabajamos con consumidores industriales, acogidos a la tarifa de seis periodos.
2 Formación de precios en régimen de mercado 63
Energía adquirida por los clientes acogidos a tarifas de acceso de alta
tensión y tres periodos:
Periodo 1 (punta). X1 = 0.007934
Periodo 2 (llano). X2 = 0.004272
Periodo 3 (valle). X3 = 0.000000
Energía adquirida por los clientes acogidos a tarifas de acceso de baja
tensión y tres periodos:
Periodo 1 (punta). X1 = 0.013427
Periodo 2 (llano). X2 = 0.004272
Periodo 3 (valle). X3 = 0.000000
Energía adquirida por los clientes acogidos a tarifas de acceso de dos
periodos:
Periodo 1 (punta y llano). X1 = 0.013222
Periodo 2 (valle). X2 = 0
Energía adquirida por clientes acogidos a tarifa de un solo periodo:
Periodo 1 (punta, llano y valle). X1 = 0.013222
Coeficientes de pérdidas para traspasar la energía suministrada a los consumidores
cualificados en sus contadores a energía suministrada en barras de central11. Se
11 Es necesario, según se vio, para el cálculo de la garantía de potencia el determinar la energía en
barras de central necesaria para satisfacer el consumo. Los coeficientes que permiten hacer este cambio de
consumo a barras de central se encuentran en el Anexo IV del RD 1634/2006.
2 Formación de precios en régimen de mercado 64
cuantifican las pérdidas de transporte y distribución homogéneas por cada
tarifa de acceso para poder traspasar la energía suministrada a los
consumidores a energía suministrada en barras de central.
En resumen, cada mes este término se calcula determinando la energía
consumida, agrupando el consumo energético en los diferentes tipos de
periodos. Esta energía, por periodos, se eleva (mediante los coecientes de
pérdidas) para obtener la energía consumida en barras de central por periodo.
Multiplicando cada uno de los términos de energía b.c. ! periodo por el precio
unitario de garantía de potencia, se obtiene la cantidad a pagar por garantía de
potencia en el mes.
2 Formación de precios en régimen de mercado 65
2.6 Recargos e impuestos
2.6.1 Impuesto de la electricidad
Según la Ley 66/1997 de Medidas Fiscales, Administrativas y de orden
social, se aplicará un 5,113% al precio de venta final (a todos los componentes
del precio, incluyendo energía y margen comercial). Así, el precio se calcula
como:
Precio = (energía + GSLP + T.A. energía + T.A. potencia + Margen) · I.E.
2.6.2 Moratoria nuclear
En la breve introducción histórica se hacía referencia a la moratoria nuclear.
En 1984 se paran cinco grupos nucleares en construcción (algunos de los cuales
se encontraban próximos a su entrada en funcionamiento) por lo que los
titulares de los proyectos que se paralizan reciben una compensación por las
inversiones realizadas y el coste de su financiación, mediante la afectación a
este fin de un porcentaje de la facturación por venta de energía a los usuarios.
El plazo durante el que esta moratoria debería permitir recuperar las
inversiones realizadas sería de 25 años a partir de 1995, es decir, hasta el año
2020.
En el RD 1634/2006 se revisa este término de forma que se establece que el
0.02% de la cuota de la moratoria nuclear debe aplicarse igualmente sobre las
cantidades resultantes de la asignación de la energía adquirida por los
comercializadores o consumidores cualificados en el mercado de la electricidad
o a las energías suministradas a través de contratos bilaterales físicos, de
acuerdo con lo previsto en el artículo 6 del Rd 2017/1997, de 26 de diciembre,
por el que se organiza y regula el procedimiento de liquidación de los costes
permanentes del sistema y de los costes de diversificación y seguridad de
abastecimiento. Es, por tanto, un impuesto fijo que se aplica al precio que se
paga por la energía comprada en el pool y al precio de la garantía de potencia.
3 Servicios de gestión de demanda 67
3 Servicios de gestión de demanda
La necesidad de garantizar el suministro de electricidad a los consumidores,
obliga a disponer de herramientas que flexibilicen la operación del sistema y
que permitan dar respuestas rápidas y eficientes ante eventuales situaciones de
emergencia, de forma que se minimice el impacto en la seguridad del sistema.
La posibilidad de reducir la potencia demandada de aquellos consumidores que
estén dispuestos a ello, se presenta como una valiosa herramienta para resolver
aquellos incidentes que puedan derivar en una falta de suministro.
Hasta ahora, determinados consumidores venían ofreciendo servicios de
gestión de la demanda al sistema eléctrico, como el de interrumpibilidad,
reactiva o modulación de carga, retribuidos a través de la tarifa eléctrica.
La posibilidad de reducir la potencia demandada de energía eléctrica a
cambio de una compensación económica no es nueva ya que está contemplada
en nuestra regulación, si bien era una opción que sólo se ofrecía a los
consumidores que se encontraban acogidos a las tarifas generales de alta
tensión, a la tarifa horaria de potencia y a los grandes consumidores sujetos a la
tarifa G.4. La necesidad de adaptar nuestra regulación a la de la Unión Europea
y de no dar un tratamiento discriminatorio a los consumidores hace necesario
posibilitar la participación en el mecanismo de reducción de potencia a los
consumidores que adquieren su energía en el Mercado de Producción.
Dada la importancia de este servicio para la garantía de suministro y en
línea con el nuevo modelo que establece la Directiva 2003/54/CE, se hace
necesario regularlo en el mercado para los consumidores que adquieren su
energía libremente.
3 Servicios de gestión de demanda 68
3.1 Nuevas disposiciones aprobadas
Por ello en el RD 1634/2006 se fijan (en una de sus disposiciones) las bases
para regular este servicio que será gestionado por el Operador del Sistema,
habilitando al Ministerio de Industria, Turismo y Comercio para desarrollar sus
condiciones y los requisitos para la participación en el mismo de los
consumidores en el mercado, así como su régimen retributivo.
Es en la OM 2370/2007, de 26 de Julio 2007, sobre interrumpibilidad para
consumidores en mercado, donde se establece la regulación de las condiciones
de servicio de gestión de la demanda de interrumpibilidad ofrecido por los
consumidores que adquieren su energía en el mercado de producción, los
requisitos para participar como proveedor del mismo, así como su régimen
retributivo.
Servicio de interrumpibilidad
El servicio de interrumpibilidad de un consumidor que sea proveedor de
este servicio consiste en reducir la potencia activa demandada hasta el valor de
la potencia residual requerida, en respuesta a una orden de reducción de
potencia dada por el Operador del Sistema.
De acuerdo con la Orden Ministerial, existen cinco tipos de reducción para
cada uno de los cuales se da un tiempo de preaviso mínimo y una duración
total máxima de la orden de reducción de la potencia. Serán los siguientes:
Tipo Preaviso mínimo Duración total máxima
1 2 horas 12 horas
2 2 horas 8 horas
3 1 hora 3 horas
3 Servicios de gestión de demanda 69
4 5 min. 2 horas
5 0 min. 1 hora
Donde:
Tipo: denominación de la modalidad de reducción de potencia que pueden
ofrecer los consumidores, proveedores del servicio.
Preaviso mínimo: tiempo mínimo necesario entre el instante de emisión de
la orden de reducción de potencia y el inicio de su primer periodo de
aplicación.
Duración total máxima: suma de la duración máxima de todos los periodos
que componen la orden de reducción de potencia.
La orden de reducción de potencia puede constar de uno a varios periodos
de duración mínima de una hora y no necesariamente consecutivos. En caso de
que no sean consecutivos, deberá existir al menos una hora de intervalo entre
ellos.
Cada tipo de reducción de potencia se caracterizará por el número máximo
de periodos por orden, duración máxima de cada periodo y máximo valor de
potencia residual a consumir en cada uno de ellos.
T
ipo
Número
máximo de
periodos por
orden
Duración máxima
por periodo
Máximo valor de potencia
residual a consumir en cada
periodo
1 3 4 horas Pmáx 1 en dos periodos
P50% en un periodo
3 Servicios de gestión de demanda 70
2 2 4 horas Pmáx 2
3 1 3 horas Pmáx 3
4 1 2 horas Pmáx 4
5 1 1 hora Pmáx 5
Donde:
Pmáx,i es la potencia residual máxima, el valor de potencia máxima a
consumir por el proveedor del servicio para el tipo de reducción de potencia
!"#$%&'%()*%+eriodos en que se solicite la máxima reducción de potencia.
Pf es la potencia de consumo; valor verificable de potencia a consumir de
forma continuada por el proveedor del servicio, en los periodos tarifarios 1 a 6.
El valor de la potencia de consumo para cada periodo figurará en la
correspondiente autorización administrativa.
Estos valores se revisarán anualmente, teniendo en cuenta el valor medio del
consumo en cada uno de los periodos tarifarios correspondientes a los últimos
dos años y el perfil de consumo previsto para el año en curso comunicado al
operador del sistema.
P50% es la potencia residual al 50%. Se calculará como se indica a
continuación:
)!"5,0 ..%50 imáximáx PPfPP
3 Servicios de gestión de demanda 71
El tiempo transcurrido entre el instante de inicio del primer periodo y el
instante final del último periodo de una orden no será, en ningún caso, superior
a la duración total máxima definida para el tipo de dicha orden.
El número máximo de horas de aplicación a cada consumidor que preste
este servicio para el conjunto de órdenes tipo 1 y 2 será de 120 horas por año.
Para el conjunto de órdenes tipo 3, 4 y 5 la duración será como mucho de 120
horas por año.
Las horas de aplicación de cada tipo de orden se calcularán como suma de la
duración de todos los periodos en que se solicite reducción de potencia.
Para cada consumidor que preste este servicio, el número máximo de
órdenes de reducción de potencia, cualquiera que sea el tipo, será de cinco
semanales y una diaria.
Se pueden contratar los tipos de reducción de potencia de acuerdo con las
siguientes modalidades.
Modalidad A: sólo se contratan los tipos 3, 4 y 5.
Modalidad B: se contratan los cinco tipos definidos con carácter general
Retribución del servicio de interrumpibilidad
La retribución anual del servicio de interrumpibilidad (expresada en euros)
se hará de acuerdo a la siguiente fórmula:
FEDIRSI !
Donde:
3 Servicios de gestión de demanda 72
FE es el importe correspondiente a la facturación anual equivalente de la
energía, expresada en euros, que se calculará de acuerdo con la siguiente
expresión.
4
1
6
1])!([
hh
jjjeh EPFE
Donde:
Peh es el precio medio de la energía expresado en ,-./0%1)22&*+)'3"&'4&%5(%
trimestre h. Este precio se publicará para cada trimestre por la Dirección
General de Política Energética y Minas utilizando como referencias los precios
resultantes del mercado diario, los precios del mercado a plazo de OMIP y los
precios resultantes en las subastas de distribuidores o comercializadores de
último recurso correspondiente.
Para el primer cuatrimestre de 2008, en la resolución de 28 de diciembre de
2007 de la Dirección General de Política Energética y Minas, se fijó el valor del
precio medio de la energía en 59,24 ,-./06
Ej es la energía anual consumida en barras de central, expresada en kWh, en
cada periodo tarifario j.
j es el coeficiente de modulación de carga que tomará los siguientes
valores en cada periodo tarifario j, con el que se pretenden incentivar los
consumos en P6.
Periodo
tarifario
1 2 3 4 5 6
Aj 0,046 0,096 0,09 0,176 0,244 1,390
3 Servicios de gestión de demanda 73
DI es el descuento anual en porcentaje. Se calcula con dos cifras decimales y
el redondeo se hará, por defecto o por exceso, según que la tercera cifra decimal
despreciada sea o no menor que 5. Se obtiene de acuerdo con la siguiente
fórmula.
1
1max1 )!"
!2100!78,0m
n
iimi
P
PPKS
HHDI
Donde las variables empleadas representan:
H son las horas anuales de utilización equivalente expresadas en números
enteros que se calculará como el cociente entre el consumo total anual
expresado en kWh y la potencia Pm1, definida más adelante y expresada en
kW.
Si H<2100 DI será igual a 0.
Si el valor del cociente fuera superior a 14000 horas, H tomará el valor de
14000.
S es el coeficiente de coincidencia. Tiene los siguientes valores, según el
número de tipos de reducción de potencia que hayan sido contratados por el
proveedor del servicio.
Nº tipos S
3 0,85
5 0,76
Ki. Constante que tendrá un valor para cada tipo i de orden de reducción de
potencia que haya sido contratada por el proveedor del servicio.
3 Servicios de gestión de demanda 74
Tipo K
1 25
2 25
3 24
4 16
5 20
Pm1. Potencia media consumida por el proveedor del servicio en el periodo
tarifario 1. Su valor se calculará como cociente entre la energía consumida en el
periodo tarifario 1 y las horas de dicho periodo, descontando las horas
correspondientes a órdenes de reducción de potencia aplicadas durante el
mismo.
Pmáx.j. Potencia residual máxima demandable por el consumidor durante la
posible interrupción en cada uno de los tipos i a los que esté acogido.
)!"5,0 ..%50 imáximáx PPfPP . Suma de los productos )!"5,0 ..%50 imáximáx PPfPP para cada uno de los
tipos i de reducción de potencia contratados. Si el valor de la resta fuese
negativo, se tomaría el valor 0.
En cualquier caso, la retribución máxima obtenible está limitada a
20,-./06
Requisitos que deben reunir los consumidores para la contratación del servicio
3 Servicios de gestión de demanda 75
Los requisitos para participar como proveedor de este servicio son los
siguientes:
Ser consumidor en AT.
Ofrecer un mínimo de 5 MW interrumpibles.
Consumo P6 (valle, fines de semana y agosto) >55%.
Instalar un relé de deslastre por subfrecuencia.
No poner en riesgo a terceros con las interrupciones.
3.1 Ejemplos de utilización y valoración económica
Como se verá en el último capítulo, a lo largo del año se realizaron varias
herramientas informáticas, programadas en Visual Basic sobre Excel, que
permiten:
A partir de una curva de carga y una serie de datos, que se piden
mediante ventanas y cuadros, calcular las tarifas de acceso, garantía
de potencia e interrumpibilidad.
Obtener una estimación (muy básica) de los precios de la energía, a
partir de un histórico de datos, repartidos en periodos horarios e
incluso meses en algunos casos.
Se presentarán a continuación dos ejemplos de cálculo de la
interrumpibilidad para dos fábricas de PRAXAIR12.
12 Es una referencia tecnológica y un líder mundial en Gases Industriales. Es la primera empresa de
esta actividad en América del Norte y América del Sur y el primer fabricante y proveedor de dióxido de
carbono en el mundo. Ha sido la empresa en la que estuve desarrollando las prácticas para mi director de
proyecto.
3 Servicios de gestión de demanda 76
3.1.1 Modalidad A
La primera de las fábricas es la de Avilés. A partir de la siguiente curva
forward de carga para el 2009 y de la modalidad de contratación del servicio de
interrumpibilidad (modalidad A) es posible, sabiendo que el precio medio de la
energía13 a aplicar en el cálculo de la retribución del servicio de gestión de
demanda ofrecido por los consumidores que adquieren su energía en el
mercado de producción durante el primer trimestre (se supuso un valor
aproximado a éste para todo el año) de 2009 es de 59.24 ,-./0$% 15(17(52% &(%
descuento por interrumpibilidad.
Curva forward de carga para el año 2009
Curva de carga horaria
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
Fecha
kW
13 Resolución de 28 de diciembre de 2007, de la Dirección General de Política Energética y Minas, por
la que se fija el precio medio de la energía a aplicar en el cálculo de la retribución del servicio de gestión de
la demanda de interrumpibilidad ofrecido por los consumidores que adquieren su energía en el mercado
de producción durante el primer trimestre de 2008.
3 Servicios de gestión de demanda 77
Datos del contrato
Resultados obtenidos con la herramienta
Los resultados representan el descuento por interrumpibilidad para todo el
año.
3 Servicios de gestión de demanda 78
3.1.2 Modalidad B
La siguiente fábrica, con modalidad contratada B, es Beasain. Los resultados
que se obtuvieron fueron.
Curva forward de carga para el año 2009
3 Servicios de gestión de demanda 79
Curva de carga horaria
0
2000
4000
6000
8000
10000
12000
14000
Fecha
kW
Datos del contrato
3 Servicios de gestión de demanda 80
Resultados obtenidos con la herramienta
Los resultados representan el descuento por interrumpibilidad para todo el
año.
4 Estimación de curvas de carga de consumos y precios. Tratamiento de datos históricos y tipificación de curvas
futuras. 82
4 Estimación de curvas de carga de consumos y precios.
Tratamiento de datos históricos y tipificación de curvas futuras.
A la hora de tomar cualquier decisión futura se deben manejar datos
históricos, trabajar sobre ellos y a través de ciertas previsiones tomar la mejor
decisión posible.
Se pudo ver en el capítulo anterior cómo las curvas forward de carga
permitieron estimar una oferta de servicios de interrumpibilidad. Estas curvas
se obtienen a partir de los datos históricos del consumo, modificándolos de
acuerdo con las previsiones esperadas y adecuándolo con el calendario
previsto. Con un sencillo ejemplo se entienderá más fácilmente.
Imaginemos un cliente que tiene un punto de consumo, situado en La
Coruña, que tiene un gasto eléctrico de 6.1 GWh anuales. Los datos que nos
suministra sobre su consumo son:
Curva de carga horaria del último año completo.
A partir del 1 de enero del año siguiente el cliente prevé un aumento
de su consumo del 20%.
Desea hacer un contrato a partir de septiembre, momento en que finaliza su
actual contrato. Ha de estimar cuál será su curva futura de consumo poder
negociar un buen acuerdo que satisfaga sus necesidades.
Análisis de la curva histórica
Disponemos de una curva de carga horaria, que da una información más
detallada sobre el perfil de consumo del cliente.
4 Estimación de curvas de carga de consumos y precios. Tratamiento de datos históricos y tipificación de curvas
futuras. 83
La curva de carga detalla cronológicamente la energía horaria, o potencia
media horaria, consumida.
83&'4"9"151":'%3&%!;<5*%="+)#
Para deducir información del consumo, y sabiendo que existe un ciclo
diario y semanal de actividad, se agrupan las horas por días tipo de consumo
homogéneo. Para cada hora de cada día tipo se usará la media de los valores
3"*+)'">(&*$% *"&?+2&%@%175'3)% (5%3"*42">71":'%+2&*&'4&%7'%5*+&14)%!')2?5(#%@%
con baja dispersión. El análisis estadístico de la muestra nos confirmará si la
agrupación de días tipo es correcta o, si fuera necesario, introducir otros
elementos distintivos.
4 Estimación de curvas de carga de consumos y precios. Tratamiento de datos históricos y tipificación de curvas
futuras. 84
El resultado del tratamiento de los datos nos confirma, en este caso, que la
agrupación de todos los días de la semana, excepto el domingo, es apropiada.
A)'% &*45% "'9)2?51":'% 3&% !;<5*% ="+)#$% @5% *&% +7&3&% 1onstruir una curva
forward o curva de consumo esperado, para el periodo del nuevo contrato
propuesto.
En este proceso es necesario introducir los datos facilitados por el cliente
para el futuro, que prevé un aumento del 20% de su consumo a partir de enero.
De esta manera, a los días tipo calculados, se le aplica este aumento a partir de
esa fecha.
4 Estimación de curvas de carga de consumos y precios. Tratamiento de datos históricos y tipificación de curvas
futuras. 85
Como resultado de lo anterior se obtiene una curva de carga prevista, con
un consumo de 6.94 GWh.
En resumen, el procedimiento seguido ha consistido en tratar primero los
datos históricos disponibles, sacando los días tipos de cada semana que mejor
se ajustan a la distribución de los datos. A partir de esta información se obtiene
la curva de carga tipificada que, finalmente, se modifica a partir de las
previsiones realizadas para así obtener la curva forward de carga. Este
procedimiento estimativo permite hacer cálculos de cara al futuro. La dificultad
del método reside en la búsqueda de los días tipo pues debido a la influencia de
otros factores en el consumo, como por ejemplo la climatología o la laboralidad,
pueden aconsejar ampliar el abanico de días tipo. Es muy corriente, por
4 Estimación de curvas de carga de consumos y precios. Tratamiento de datos históricos y tipificación de curvas
futuras. 86
ejemplo, que los lunes sean diferentes al resto de días laborables por se el día en
el que se retoma la actividad después del domingo.
Estimación de curvas forward de precio
La segunda herramienta que se desarrolló se basó en un procedimiento
similar al de curvas de carga para tratar los precios y estimar los precios
forward horarios. Para ello, se propone seguir los siguientes pasos.
1º Obtener un histórico de precios horarios representativos, por ejemplo del
mercado diario. Se recomienda tomar un cierto número de años, aunque
previamente debe analizarse si ocurrieron circunstancias anormales en algún
momento (problemas de capacidad, sequías, etc.).
2º De cada año que se tiene se obtiene el precio medio por periodos. Se
propone utilizar los periodos de la tarifa de acceso por meses, pero con mayor
detalle para el mes de agosto. En concreto, para el sistema español, se
recomienda:
P1 a P5 y mes
P6. Todos los meses (salvo agosto) se separan en laborables, sábados,
domingos y festivos. Agosto se separa en laborables (de 0 a 8 y de 8 a
24 horas) sábados, domingos y festivos.
3º Se calcula el cociente de cada uno de los precios medios del punto 2 por
el precio medio de la energía en el mercado diario de cada año.
4º A partir de todos los cocientes (llamados precios unitarios ahora) de cada
uno de los años, se obtiene una distribución estadística de precios unitarios
medios para cada uno de los periodos definidos, que da lugar a unos
estimadores más fiables para el futuro.
4 Estimación de curvas de carga de consumos y precios. Tratamiento de datos históricos y tipificación de curvas
futuras. 87
El precio medio para el año siguiente, que cotiza en los mercados, nos dará
la base para extrapolar los precios por periodos futuros, de manera que
multiplicándolo por los precios unitarios esperados del año, obtendríamos una
curva forward de precios. De esta forma sencilla, se podría obtener una
estimación del precio horario de la energía. Combinando la esperaza de precios
con la curva de carga pevista, se podría precisar el coste energético previsto
para el futuro. De la curva forward de carga, se obtendrían los términos
correspondientes a tarifas de acceso, garantía de potencia, además de la
información necesaria para calcular el servicio de interrumpibilidad.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .2
5 Herramientas informáticas desarrolladas
A partir de la toda la regulación vigente se desarrollaron dos herramientas
informáticas, programadas en Visual Basic sobre Excel. La primera de ellas
permite el cálculo de los accesos, garantía de potencia, interrumpibilidad
además de otra información que puede resultar útil. La otra facilita una serie de
porcentajes sobre el valor medio anual de la energía (en base a un histórico de
datos), con lo que se puede sacar un precio estimado de la energía en el pool en
función del periodo en el que nos encontremos. Es decir, se podría sacar la
curva forward de precios a partir del precio medio esperado de la energía.
Se recogerá en este capítulo el funcionamiento (sobre un ejemplo concreto) y
el código de cada una de estas aplicaciones. Aunque es difícil exponerlo
claramente se intentará que así sea.
1.1 Accesos, garantía de potencia e interrumpibilidad.
Nota: Los fragmentos de código aparecen en color azul al final de este
punto.
Como dato inicial se debe introducir la curva de carga anual cuartohoraria.
Se pudo hacer una nueva versión en la que esto dejó de ser fundamental,
pudiéndose introducir la curva de carga horaria. Una vez que es introducida es
posible ejecutar la aplicación (CTRL+S). Una macro principal (desde la que se
llama a las distintas macros y formularios de la aplicación) comienza a correr.
Nada más ejecutarla, se abre un formulario que pide que se introduzcan los
días en los que se produce el cambio de hora y si el año de estudio es bisiesto o
no. El porqué de que el programa necesite esta información se debe a que todos
los días han de tener 24 horas, incluso aquellos en los que se produzca en
cambio de hora. En caso de que no verfique esta condición, un mensaje de error
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .3
aparece y se pide que se introduzcan los datos correctamente. El saber si un año
es bisiesto o no es para tenerlo en cuenta a la hora de hacer los cálculos y
presentar los resultados.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .4
Curva de carga horaria
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
01/07/2009
15/07/2009
29/07/2009
12/08/2009
26/08/2009
09/09/2009
23/09/2009
07/10/2009
21/10/2009
04/11/2009
18/11/2009
02/12/2009
16/12/2009
30/12/2009
13/01/2010
27/01/2010
10/02/2010
24/02/2010
10/03/2010
24/03/2010
07/04/2010
21/04/2010
05/05/2010
19/05/2010
02/06/2010
16/06/2010
Fecha
kW
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .5
Una vez que los datos han sido introducidos correctamente, comienza el
procesado de la información para obtener el resto de datos necesarios para
comenzar a operar y obtener resultados. Se pasan los datos de potencia
cuartohorarios a horarios (en el caso de que ya sean cuartohorarios ya no será
necesario), se calcula el número de horas anuales de cada uno de los días de la
semana a lo largo del año y, lo más importante, para cada hora del año se
calcula el periodo (de acuerdo con la legislación que entró en vigor en 2008).
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .7
Llegados a este punto una nueva ventana de diálogo nos pregunta si
queremos o no continuar, obteniendo así los resultados.
En el caso de que se continúe, se comienzan a rellenar una serie de tablas de
datos. Éstas son: potencia media por hora y día (kW) (con esta tabla se calcula la
curva “Días Tipo”, necesaria, como se pudo ver en el capítulo 4, para el cálculo
de curvas forward de carga); energía total por día y hora (kWh) para poder
calcular la anterior tabla; potencia media por periodo y mes (kW); energía por
periodo y mes (kWh) (para el cálculo de la tabla anterior); número de horas de
cada periodo; energía por periodo y mes en barras de central (kWh) (necesario
para el cálculo de la garantía de potencia); potencia máxima y mínima por
periodo y mes (kW) y horas en las que se producen esos máximos y mínimos.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .8
Días Tipo
6600,00
6800,00
7000,00
7200,00
7400,00
7600,00
7800,00
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Hora
kW
LunesMartesMiércolesJuevesViernesSábadoDomingo
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .11
Se calculan a continuación los excesos de potencia. Para ello se pide cuál es
la potencia contratada (kW) en cada uno de los periodos horarios. Una vez que
se haya introducido, se calculan los excesos, presentando en una tabla los costes
de los excesos de potencia (€) por periodo y mes. Al mismo tiempo calcula, a
partir de la información introducida en cuanto a potencia contratada, la parte
fija de las tarifas de acceso (potencia). Y por último saca la parte variable de las
tarifas de acceso, el término de energía. Ya se han obtenido las tarifas de acceso.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .12
La siguiente información que se solicita es el tipo de tarifa de alta tensión
contratada. A partir de este dato, de la energía en barras de central (calculada
en una de las tablas) y de los costes regulados en el RD 1634/2006, se obtienen
las cantidades a pagar mensualmente en concepto de garantía de potencia.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .13
Por último, se calcula la retribución del servicio de interrumpibilidad. Se
pide determinar el precio medio de la energía (Peh) en €/kWh así como la
modalidad contratada. Según la modalidad elegida, podremos introducir
Pmax,i.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .15
Este es un resumen, lo más claro y conciso posible del procedimiento
seguido por esta aplicación. Los datos representados son los de unas de las
fábricas de PRAXAIR, la de Pinto. Pero no son datos de consumos reales ni de
contratos reales sino que son estimaciones que se realizaron de prueba durante
mi estancia allí.
Para todos estos cálculos, se tienen en la hoja de cálculo una serie de tablas
con los términos regulados recogidos en la normativa vigente.
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .17
Código Sub Abrir() Hoja1.Activate Dim respuesta, micadena Dim marzo As Variant Dim octubre As Variant Dim fecha As Variant Dim n_dias_año As Long Dim n_cuartos_marzo As Long Dim n_cuartos_octubre As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .18
Dim fila As Long Dim columna As Long Dim Formulario As UserForm1 Dim Formulario2 As UserForm2 Dim Formulario3 As UserForm3 Dim Formulario4 As UserForm4 Dim Formulario5 As UserForm5 Dim finalizado As Long Dim cancelar As Long respuesta = MsgBox("Datos a introducir: potencias CUARTOHORARIAS de UN AÑO. Todos los DÍAS deben ser de 24
HORAS. ¿Ha introducido ya los datos?", vbYesNo, "Atención") If (respuesta = vbYes) Then micadena = "si" Else micadena = "no" End If If (micadena = "si") Then Set Formulario = New UserForm1 Formulario.Show cancelar = Cells(40, 3) If cancelar = 0 Then marzo = Cells(2, 9) octubre = Cells(3, 9) n_dias_año = Cells(6, 9) fila = 2 columna = 1 n_cuartos_marzo = 0 n_cuartos_octubre = 0 For fila = 2 To ((n_dias_año * 24 * 4) + 1) fecha = Cells(fila, columna) If fecha = marzo Then n_cuartos_marzo = n_cuartos_marzo + 1 End If If fecha = octubre Then n_cuartos_octubre = n_cuartos_octubre + 1 End If Next fila If ((n_cuartos_marzo <> 96) Or (n_cuartos_octubre <> 96)) Then respuesta = MsgBox("Recuerde, debe introducir los datos cuartohorarios. Cada día debe ser de 24 horas.
Modifique sus datos de entrada", , "Atención") Else 'Nota: esto podria haberlo hecho de manera programada > en un futuro debere hacerlo respuesta = MsgBox("Datos introducidos correctamente", , "Atención")
respuesta = MsgBox("Obteniendo el resto de datos necesarios para el problema", vbInform, "Procesando...") Módulo7.hora Módulo7.fecha Módulo1.Pot_media Módulo8.Datos_fecha Módulo2.Det_tipodia Módulo3.Det_per_2008 Módulo1.n_dias respuesta = MsgBox("Finalizado con éxito", vbInform, "Información") Módulo9.Energia_tot_dia_hora Módulo10.Pot_media_dia_hora Módulo11.Energia_periodo_mes Módulo12.n_dias_periodo_mes Módulo12.Pot_media_per_mes Módulo13.P_max_min_per_mes Hoja2.Range("AF1").Select Set Formulario2 = New UserForm2 Formulario2.Show Módulo14.Copio_datos
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .19
Módulo14.Pot_cuart Módulo14.calc_excesos Módulo14.costes_excesos Módulo13.Pot_media_per_mes_norm Módulo14.excesos_maximos Hoja2.Range("AS18").Select Set Formulario3 = New UserForm3 Formulario3.Show Módulo15.Accesos Módulo16.Energiab_central Módulo16.Garantia_potencia Set Formulario4 = New UserForm4 Formulario4.Show Módulo17.FE_interumpibilidad Set Formulario5 = New UserForm5 Formulario5.Show Módulo17.DI_interumpibilidad End If Else Cells(40, 3) = 0 End If Else respuesta = MsgBox("Introdúzcalos", , "Atención") End If End Sub Private Sub CheckBox1_Click() TextBox1.Enabled = True End Sub Private Sub CheckBox2_Click() TextBox2.Enabled = True End Sub Private Sub CommandButton1_Click() Dim march As Date Dim october As Date Dim n_dias As Long march = TextBox1.Value october = TextBox2.Value Cells(2, 9) = march Cells(3, 9) = october If (OptionButton1.Value = True) Then n_dias = 365 Else n_dias = 366 End If Cells(6, 9) = n_dias Unload Me End Sub Private Sub CommandButton2_Click() Cells(40, 3) = 1 Unload Me End Sub Sub hora() Dim n_dias_año As Long Dim fila As Long Dim hora As Long Dim columna As Long fila = 2 columna = 6 i = 0 hora = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .20
n_dias_año = Cells(6, 9) While fila <= ((n_dias_año 1) * 24 + 2) For hora = 0 To 23 Cells(fila, columna) = hora fila = fila + 1 Next hora Wend End Sub Sub fecha() Dim n_dias_año As Long Dim fila As Long Dim cuarto As Long Dim columna As Long Dim fecha As Variant Dim n As Long Dim i As Long fila = 2 columna = 7 cuarto = 0 n = 0 n_dias_año = Cells(6, 9) While fila <= ((n_dias_año * 24 * 4) + 1) For cuarto = 0 To 3 fecha = Cells(fila, 1) If cuarto = 3 Then Cells(fila 3 * n, columna) = fecha End If fila = fila + 1 Next cuarto n = n + 1 Wend For i = 0 To 2 Range("G2").Select Selection.Delete Shift:=xlUp Next i End Sub Sub Pot_media() Dim fila As Long Dim fila_ini As Long Dim columna As Long Dim potencia As Long Dim suma As Long Dim media As Long Dim contador As Long Dim n As Long Dim n_dias_año As Long fila = 2 columna = 8 potencia = 0 contador = 1 n = 0 n_dias_año = Cells(6, 9) While fila <= ((n_dias_año * 24 * 4) + 1) suma = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .21
For contador = 1 To 4 suma = suma + Cells(fila, columna 6) fila = fila + 1 Next contador n = n + 1 'Cuento el numero de veces que ya he hecho la media... media = suma / 4 'Asi consigo subir, dentro de la columna Cells(fila 3 * n, columna) = media '...y en proporcion al numero de veces en que haya hecho la media, los valores de
la media calculados Wend 'Elimino la fila que me queda en blanco despues de haberme calulado todas las medias Range("H2").Select Selection.Delete Shift:=xlUp End Sub Sub Datos_fecha() Dim n_dias_año As Long Dim fila As Long Dim columna As Long Dim mes As Long Dim dia_semana As Long Dim dia_mes As Long fila = 2 columna = 18 n_dias_año = Cells(6, 9) For fila = 2 To ((n_dias_año * 24) + 1) mes = Month(Cells(fila, 7)) dia_semana = WeekDay((Cells(fila, 7)), vbMonday) dia_mes = Day(Cells(fila, 7)) Cells(fila, columna) = mes Cells(fila, columna + 1) = dia_semana Cells(fila, columna + 2) = dia_mes Next fila End Sub Sub Det_tipodia() Dim fila As Long Dim columna As Long Dim dia_sem As Long Dim c_d_semana As Long Dim fila_tarifa1 As Long Dim fila_tarifa2 As Long Dim mes As Long Dim dia_mes As Long Dim fila_tabla As Long Dim columna_tabla As Long Dim tarifa Dim n_dias_año As Long fila = 2 columna = 19 fila_tabla = 30 n_dias_año = Cells(6, 9) For fila = 2 To ((n_dias_año * 24) + 1) dia_semana = Cells(fila, columna)
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .22
c_d_semana = dia_semana + 25 'Paso a la columna de la tabla de las tarifas mes = Cells(fila, columna 1) dia_mes = Cells(fila, columna + 1) fila_tarifa1 = fila_tabla + mes fila_tarifa2 = fila_tabla + mes + 1 If ((mes = 1) Or (mes = 2) Or (mes = 3) Or (mes = 4) Or (mes = 5)) Then tarifa = Cells(fila_tarifa1, c_d_semana) End If If ((mes = 6) And (dia_mes <= 15)) Then tarifa = Cells(fila_tarifa1, c_d_semana) End If If (((mes = 6) And (dia_mes > 15)) Or (mes = 7) Or (mes = 8) Or (mes = 9) Or (mes = 10) Or (mes = 11) Or (mes = 12))
Then tarifa = Cells(fila_tarifa2, c_d_semana) End If If (((dia_mes = 1) And (mes = 1)) Or ((dia_mes = 1) And (mes = 5)) Or ((dia_mes = 1) And (mes = 11)) Or ((dia_mes =
6) And (mes = 12)) Or ((dia_mes = 8) And (mes = 12)) Or ((dia_mes = 25) And (mes = 12))) Then tarifa = "D" End If Cells(fila, columna + 2).Select ActiveCell.FormulaR1C1 = tarifa Next fila End Sub Sub Det_per_2008() Dim fila As Long Dim fila_tarifa As Long Dim columna As Long Dim colum_tarifa As Long Dim tarifa As String Dim tarifa_num As Long Dim periodo As Long Dim hora As Long Dim f As Long Dim cL As Long Dim n_dias_año As Long fila = 2 fila_tarifa = 3 columna = 21 colum_tarifa = 25 n_dias_año = Cells(6, 9) For fila = 2 To ((n_dias_año * 24) + 1) tarifa = Hoja1.Cells(fila, columna) hora = Hoja1.Cells(fila, columna 15) If (tarifa = "A") Then tarifa_num = 1 End If If (tarifa = "A1") Then tarifa_num = 2 End If If (tarifa = "B") Then tarifa_num = 3 End If If (tarifa = "B1") Then tarifa_num = 4 End If If (tarifa = "C") Then tarifa_num = 5 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .23
If (tarifa = "D") Then tarifa_num = 6 End If f = fila_tarifa + hora cL = colum_tarifa + tarifa_num periodo = Cells(f, cL) Cells(fila, columna + 1).Select ActiveCell.FormulaR1C1 = periodo Next fila End Sub Sub n_dias() Dim fila As Long Dim columna As Long Dim celda As Long Dim n_dias_año As Long Dim lunes As Long Dim martes As Long Dim miercoles As Long Dim jueves As Long Dim viernes As Long Dim sabado As Long Dim domingo As Long fila = 2 columna = 19 n_dias_año = Cells(6, 9) lunes = 0 martes = 0 miercoles = 0 jueves = 0 viernes = 0 sabado = 0 domingo = 0 For fila = 2 To ((n_dias_año * 24) + 1) celda = Cells(fila, columna) If celda = 1 Then lunes = lunes + 1 End If If celda = 2 Then martes = martes + 1 End If If celda = 3 Then miercoles = miercoles + 1 End If If celda = 4 Then jueves = jueves + 1 End If If celda = 5 Then viernes = viernes + 1 End If If celda = 6 Then sabado = sabado + 1 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .24
If celda = 7 Then domingo = domingo + 1 End If Next fila Range("M2").Select ActiveCell.FormulaR1C1 = lunes Range("M3").Select ActiveCell.FormulaR1C1 = martes Range("M4").Select ActiveCell.FormulaR1C1 = miercoles Range("M5").Select ActiveCell.FormulaR1C1 = jueves Range("M6").Select ActiveCell.FormulaR1C1 = viernes Range("M7").Select ActiveCell.FormulaR1C1 = sabado Range("M8").Select ActiveCell.FormulaR1C1 = domingo End Sub Sub Energia_tot_dia_hora() Dim n_dias_año As Long Dim plunes0 As Long Dim plunes1 As Long Dim plunes2 As Long Dim plunes3 As Long Dim plunes4 As Long Dim plunes5 As Long Dim plunes6 As Long Dim plunes7 As Long Dim plunes8 As Long Dim plunes9 As Long Dim plunes10 As Long Dim plunes11 As Long Dim plunes12 As Long Dim plunes13 As Long Dim plunes14 As Long Dim plunes15 As Long Dim plunes16 As Long Dim plunes17 As Long Dim plunes18 As Long Dim plunes19 As Long Dim plunes20 As Long Dim plunes21 As Long Dim plunes22 As Long Dim plunes23 As Long Dim pmartes0 As Long Dim pmartes1 As Long Dim pmartes2 As Long Dim pmartes3 As Long Dim pmartes4 As Long Dim pmartes5 As Long Dim pmartes6 As Long Dim pmartes7 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .25
Dim pmartes8 As Long Dim pmartes9 As Long Dim pmartes10 As Long Dim pmartes11 As Long Dim pmartes12 As Long Dim pmartes13 As Long Dim pmartes14 As Long Dim pmartes15 As Long Dim pmartes16 As Long Dim pmartes17 As Long Dim pmartes18 As Long Dim pmartes19 As Long Dim pmartes20 As Long Dim pmartes21 As Long Dim pmartes22 As Long Dim pmartes23 As Long Dim pmiercoles0 As Long Dim pmiercoles1 As Long Dim pmiercoles2 As Long Dim pmiercoles3 As Long Dim pmiercoles4 As Long Dim pmiercoles5 As Long Dim pmiercoles6 As Long Dim pmiercoles7 As Long Dim pmiercoles8 As Long Dim pmiercoles9 As Long Dim pmiercoles10 As Long Dim pmiercoles11 As Long Dim pmiercoles12 As Long Dim pmiercoles13 As Long Dim pmiercoles14 As Long Dim pmiercoles15 As Long Dim pmiercoles16 As Long Dim pmiercoles17 As Long Dim pmiercoles18 As Long Dim pmiercoles19 As Long Dim pmiercoles20 As Long Dim pmiercoles21 As Long Dim pmiercoles22 As Long Dim pmiercoles23 As Long Dim pjueves0 As Long Dim pjueves1 As Long Dim pjueves2 As Long Dim pjueves3 As Long Dim pjueves4 As Long Dim pjueves5 As Long Dim pjueves6 As Long Dim pjueves7 As Long Dim pjueves8 As Long Dim pjueves9 As Long Dim pjueves10 As Long Dim pjueves11 As Long Dim pjueves12 As Long Dim pjueves13 As Long Dim pjueves14 As Long Dim pjueves15 As Long Dim pjueves16 As Long Dim pjueves17 As Long Dim pjueves18 As Long Dim pjueves19 As Long Dim pjueves20 As Long Dim pjueves21 As Long Dim pjueves22 As Long Dim pjueves23 As Long Dim pviernes0 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .26
Dim pviernes1 As Long Dim pviernes2 As Long Dim pviernes3 As Long Dim pviernes4 As Long Dim pviernes5 As Long Dim pviernes6 As Long Dim pviernes7 As Long Dim pviernes8 As Long Dim pviernes9 As Long Dim pviernes10 As Long Dim pviernes11 As Long Dim pviernes12 As Long Dim pviernes13 As Long Dim pviernes14 As Long Dim pviernes15 As Long Dim pviernes16 As Long Dim pviernes17 As Long Dim pviernes18 As Long Dim pviernes19 As Long Dim pviernes20 As Long Dim pviernes21 As Long Dim pviernes22 As Long Dim pviernes23 As Long Dim psabado0 As Long Dim psabado1 As Long Dim psabado2 As Long Dim psabado3 As Long Dim psabado4 As Long Dim psabado5 As Long Dim psabado6 As Long Dim psabado7 As Long Dim psabado8 As Long Dim psabado9 As Long Dim psabado10 As Long Dim psabado11 As Long Dim psabado12 As Long Dim psabado13 As Long Dim psabado14 As Long Dim psabado15 As Long Dim psabado16 As Long Dim psabado17 As Long Dim psabado18 As Long Dim psabado19 As Long Dim psabado20 As Long Dim psabado21 As Long Dim psabado22 As Long Dim psabado23 As Long Dim pdomingo0 As Long Dim pdomingo1 As Long Dim pdomingo2 As Long Dim pdomingo3 As Long Dim pdomingo4 As Long Dim pdomingo5 As Long Dim pdomingo6 As Long Dim pdomingo7 As Long Dim pdomingo8 As Long Dim pdomingo9 As Long Dim pdomingo10 As Long Dim pdomingo11 As Long Dim pdomingo12 As Long Dim pdomingo13 As Long Dim pdomingo14 As Long Dim pdomingo15 As Long Dim pdomingo16 As Long Dim pdomingo17 As Long Dim pdomingo18 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .27
Dim pdomingo19 As Long Dim pdomingo20 As Long Dim pdomingo21 As Long Dim pdomingo22 As Long Dim pdomingo23 As Long Dim fila As Long Dim columna As Long Dim celda_dia As Long Dim celda_hora As Long Dim potencia As Long Hoja2.Activate fila = 2 columna = 19 n_dias_año = Hoja1.Cells(6, 9) plunes0 = 0 plunes1 = 0 plunes2 = 0 plunes3 = 0 plunes4 = 0 plunes5 = 0 plunes6 = 0 plunes7 = 0 plunes8 = 0 plunes9 = 0 plunes10 = 0 plunes11 = 0 plunes12 = 0 plunes13 = 0 plunes14 = 0 plunes15 = 0 plunes16 = 0 plunes17 = 0 plunes18 = 0 plunes19 = 0 plunes20 = 0 plunes21 = 0 plunes22 = 0 plunes23 = 0 pmartes0 = 0 pmartes1 = 0 pmartes2 = 0 pmartes3 = 0 pmartes4 = 0 pmartes5 = 0 pmartes6 = 0 pmartes7 = 0 pmartes8 = 0 pmartes9 = 0 pmartes10 = 0 pmartes11 = 0 pmartes12 = 0 pmartes13 = 0 pmartes14 = 0 pmartes15 = 0 pmartes16 = 0 pmartes17 = 0 pmartes18 = 0 pmartes19 = 0 pmartes20 = 0 pmartes21 = 0 pmartes22 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .28
pmartes23 = 0 pmiercoles0 = 0 pmiercoles1 = 0 pmiercoles2 = 0 pmiercoles3 = 0 pmiercoles4 = 0 pmiercoles5 = 0 pmiercoles6 = 0 pmiercoles7 = 0 pmiercoles8 = 0 pmiercoles9 = 0 pmiercoles10 = 0 pmiercoles11 = 0 pmiercoles12 = 0 pmiercoles13 = 0 pmiercoles14 = 0 pmiercoles15 = 0 pmiercoles16 = 0 pmiercoles17 = 0 pmiercoles18 = 0 pmiercoles19 = 0 pmiercoles20 = 0 pmiercoles21 = 0 pmiercoles22 = 0 pmiercoles23 = 0 pjueves0 = 0 pjueves1 = 0 pjueves2 = 0 pjueves3 = 0 pjueves4 = 0 pjueves5 = 0 pjueves6 = 0 pjueves7 = 0 pjueves8 = 0 pjueves9 = 0 pjueves10 = 0 pjueves11 = 0 pjueves12 = 0 pjueves13 = 0 pjueves14 = 0 pjueves15 = 0 pjueves16 = 0 pjueves17 = 0 pjueves18 = 0 pjueves19 = 0 pjueves20 = 0 pjueves21 = 0 pjueves22 = 0 pjueves23 = 0 pviernes0 = 0 pviernes1 = 0 pviernes2 = 0 pviernes3 = 0 pviernes4 = 0 pviernes5 = 0 pviernes6 = 0 pviernes7 = 0 pviernes8 = 0 pviernes9 = 0 pviernes10 = 0 pviernes11 = 0 pviernes2 = 0 pviernes13 = 0 pviernes14 = 0 pviernes15 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .29
pviernes16 = 0 pviernes17 = 0 pviernes18 = 0 pviernes19 = 0 pviernes20 = 0 pviernes21 = 0 pviernes22 = 0 pviernes23 = 0 psabado0 = 0 psabado1 = 0 psabado2 = 0 psabado3 = 0 psabado4 = 0 psabado5 = 0 psabado6 = 0 psabado7 = 0 psabado8 = 0 psabado9 = 0 psabado10 = 0 psabado11 = 0 psabado12 = 0 psabado13 = 0 psabado14 = 0 psabado15 = 0 psabado16 = 0 psabado17 = 0 psabado18 = 0 psabado19 = 0 psabado20 = 0 psabado21 = 0 psabado22 = 0 psabado23 = 0 pdomingo0 = 0 pdomingo1 = 0 pdomingo2 = 0 pdomingo3 = 0 pdomingo4 = 0 pdomingo5 = 0 pdomingo6 = 0 pdomingo7 = 0 pdomingo8 = 0 pdomingo9 = 0 pdomingo10 = 0 pdomingo11 = 0 pdomingo12 = 0 pdomingo13 = 0 pdomingo14 = 0 pdomingo15 = 0 pdomingo16 = 0 pdomingo17 = 0 pdomingo18 = 0 pdomingo19 = 0 pdomingo20 = 0 pdomingo21 = 0 pdomingo22 = 0 pdomingo23 = 0 For fila = 2 To ((n_dias_año * 24) + 1) celda_dia = Hoja1.Cells(fila, columna) celda_hora = Hoja1.Cells(fila, columna 13) potencia = Hoja1.Cells(fila, columna 11) If ((celda_dia = 1) And (celda_hora = 0)) Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .30
plunes0 = plunes0 + potencia End If If ((celda_dia = 1) And (celda_hora = 1)) Then plunes1 = plunes1 + potencia End If If ((celda_dia = 1) And (celda_hora = 2)) Then plunes2 = plunes2 + potencia End If If ((celda_dia = 1) And (celda_hora = 3)) Then plunes3 = plunes3 + potencia End If If ((celda_dia = 1) And (celda_hora = 4)) Then plunes4 = plunes4 + potencia End If If ((celda_dia = 1) And (celda_hora = 5)) Then plunes5 = plunes5 + potencia End If If ((celda_dia = 1) And (celda_hora = 6)) Then plunes6 = plunes6 + potencia End If If ((celda_dia = 1) And (celda_hora = 7)) Then plunes7 = plunes7 + potencia End If If ((celda_dia = 1) And (celda_hora = 8)) Then plunes8 = plunes8 + potencia End If If ((celda_dia = 1) And (celda_hora = 9)) Then plunes9 = plunes9 + potencia End If If ((celda_dia = 1) And (celda_hora = 10)) Then plunes10 = plunes10 + potencia End If If ((celda_dia = 1) And (celda_hora = 11)) Then plunes11 = plunes11 + potencia End If If ((celda_dia = 1) And (celda_hora = 12)) Then plunes12 = plunes12 + potencia End If If ((celda_dia = 1) And (celda_hora = 13)) Then plunes13 = plunes13 + potencia End If If ((celda_dia = 1) And (celda_hora = 14)) Then plunes14 = plunes14 + potencia End If If ((celda_dia = 1) And (celda_hora = 15)) Then plunes15 = plunes15 + potencia End If If ((celda_dia = 1) And (celda_hora = 16)) Then plunes16 = plunes16 + potencia End If If ((celda_dia = 1) And (celda_hora = 17)) Then plunes17 = plunes17 + potencia End If If ((celda_dia = 1) And (celda_hora = 18)) Then plunes18 = plunes18 + potencia End If If ((celda_dia = 1) And (celda_hora = 19)) Then plunes19 = plunes19 + potencia End If If ((celda_dia = 1) And (celda_hora = 20)) Then plunes20 = plunes20 + potencia End If If ((celda_dia = 1) And (celda_hora = 21)) Then plunes21 = plunes21 + potencia End If If ((celda_dia = 1) And (celda_hora = 22)) Then plunes22 = plunes22 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .31
If ((celda_dia = 1) And (celda_hora = 23)) Then plunes23 = plunes23 + potencia End If If ((celda_dia = 2) And (celda_hora = 0)) Then pmartes0 = pmartes0 + potencia End If If ((celda_dia = 2) And (celda_hora = 1)) Then pmartes1 = pmartes1 + potencia End If If ((celda_dia = 2) And (celda_hora = 2)) Then pmartes2 = pmartes2 + potencia End If If ((celda_dia = 2) And (celda_hora = 3)) Then pmartes3 = pmartes3 + potencia End If If ((celda_dia = 2) And (celda_hora = 4)) Then pmartes4 = pmartes4 + potencia End If If ((celda_dia = 2) And (celda_hora = 5)) Then pmartes5 = pmartes5 + potencia End If If ((celda_dia = 2) And (celda_hora = 6)) Then pmartes6 = pmartes6 + potencia End If If ((celda_dia = 2) And (celda_hora = 7)) Then pmartes7 = pmartes7 + potencia End If If ((celda_dia = 2) And (celda_hora = 8)) Then pmartes8 = pmartes8 + potencia End If If ((celda_dia = 2) And (celda_hora = 9)) Then pmartes9 = pmartes9 + potencia End If If ((celda_dia = 2) And (celda_hora = 10)) Then pmartes10 = pmartes10 + potencia End If If ((celda_dia = 2) And (celda_hora = 11)) Then pmartes11 = pmartes11 + potencia End If If ((celda_dia = 2) And (celda_hora = 12)) Then pmartes12 = pmartes12 + potencia End If If ((celda_dia = 2) And (celda_hora = 13)) Then pmartes13 = pmartes13 + potencia End If If ((celda_dia = 2) And (celda_hora = 14)) Then pmartes14 = pmartes14 + potencia End If If ((celda_dia = 2) And (celda_hora = 15)) Then pmartes15 = pmartes15 + potencia End If If ((celda_dia = 2) And (celda_hora = 16)) Then pmartes16 = pmartes16 + potencia End If If ((celda_dia = 2) And (celda_hora = 17)) Then pmartes17 = pmartes17 + potencia End If If ((celda_dia = 2) And (celda_hora = 18)) Then pmartes18 = pmartes18 + potencia End If If ((celda_dia = 2) And (celda_hora = 19)) Then pmartes19 = pmartes19 + potencia End If If ((celda_dia = 2) And (celda_hora = 20)) Then pmartes20 = pmartes20 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .32
If ((celda_dia = 2) And (celda_hora = 21)) Then pmartes21 = pmartes21 + potencia End If If ((celda_dia = 2) And (celda_hora = 22)) Then pmartes22 = pmartes22 + potencia End If If ((celda_dia = 2) And (celda_hora = 23)) Then pmartes23 = pmartes23 + potencia End If If ((celda_dia = 3) And (celda_hora = 0)) Then pmiercoles0 = pmiercoles0 + potencia End If If ((celda_dia = 3) And (celda_hora = 1)) Then pmiercoles1 = pmiercoles1 + potencia End If If ((celda_dia = 3) And (celda_hora = 2)) Then pmiercoles2 = pmiercoles2 + potencia End If If ((celda_dia = 3) And (celda_hora = 3)) Then pmiercoles3 = pmiercoles3 + potencia End If If ((celda_dia = 3) And (celda_hora = 4)) Then pmiercoles4 = pmiercoles4 + potencia End If If ((celda_dia = 3) And (celda_hora = 5)) Then pmiercoles5 = pmiercoles5 + potencia End If If ((celda_dia = 3) And (celda_hora = 6)) Then pmiercoles6 = pmiercoles6 + potencia End If If ((celda_dia = 3) And (celda_hora = 7)) Then pmiercoles7 = pmiercoles7 + potencia End If If ((celda_dia = 3) And (celda_hora = 8)) Then pmiercoles8 = pmiercoles8 + potencia End If If ((celda_dia = 3) And (celda_hora = 9)) Then pmiercoles9 = pmiercoles9 + potencia End If If ((celda_dia = 3) And (celda_hora = 10)) Then pmiercoles10 = pmiercoles10 + potencia End If If ((celda_dia = 3) And (celda_hora = 11)) Then pmiercoles11 = pmiercoles11 + potencia End If If ((celda_dia = 3) And (celda_hora = 12)) Then pmiercoles12 = pmiercoles12 + potencia End If If ((celda_dia = 3) And (celda_hora = 13)) Then pmiercoles13 = pmiercoles13 + potencia End If If ((celda_dia = 3) And (celda_hora = 14)) Then pmiercoles14 = pmiercoles14 + potencia End If If ((celda_dia = 3) And (celda_hora = 15)) Then pmiercoles15 = pmiercoles15 + potencia End If If ((celda_dia = 3) And (celda_hora = 16)) Then pmiercoles16 = pmiercoles16 + potencia End If If ((celda_dia = 3) And (celda_hora = 17)) Then pmiercoles17 = pmiercoles17 + potencia End If If ((celda_dia = 3) And (celda_hora = 18)) Then pmiercoles18 = pmiercoles18 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .33
If ((celda_dia = 3) And (celda_hora = 19)) Then pmiercoles19 = pmiercoles19 + potencia End If If ((celda_dia = 3) And (celda_hora = 20)) Then pmiercoles20 = pmiercoles20 + potencia End If If ((celda_dia = 3) And (celda_hora = 21)) Then pmiercoles21 = pmiercoles21 + potencia End If If ((celda_dia = 3) And (celda_hora = 22)) Then pmiercoles22 = pmiercoles22 + potencia End If If ((celda_dia = 3) And (celda_hora = 23)) Then pmiercoles23 = pmiercoles23 + potencia End If If ((celda_dia = 4) And (celda_hora = 0)) Then pjueves0 = pjueves0 + potencia End If If ((celda_dia = 4) And (celda_hora = 1)) Then pjueves1 = pjueves1 + potencia End If If ((celda_dia = 4) And (celda_hora = 2)) Then pjueves2 = pjueves2 + potencia End If If ((celda_dia = 4) And (celda_hora = 3)) Then pjueves3 = pjueves3 + potencia End If If ((celda_dia = 4) And (celda_hora = 4)) Then pjueves4 = pjueves4 + potencia End If If ((celda_dia = 4) And (celda_hora = 5)) Then pjueves5 = pjueves5 + potencia End If If ((celda_dia = 4) And (celda_hora = 6)) Then pjueves6 = pjueves6 + potencia End If If ((celda_dia = 4) And (celda_hora = 7)) Then pjueves7 = pjueves7 + potencia End If If ((celda_dia = 4) And (celda_hora = 8)) Then pjueves8 = pjueves8 + potencia End If If ((celda_dia = 4) And (celda_hora = 9)) Then pjueves9 = pjueves9 + potencia End If If ((celda_dia = 4) And (celda_hora = 10)) Then pjueves10 = pjueves10 + potencia End If If ((celda_dia = 4) And (celda_hora = 11)) Then pjueves11 = pjueves11 + potencia End If If ((celda_dia = 4) And (celda_hora = 12)) Then pjueves12 = pjueves12 + potencia End If If ((celda_dia = 4) And (celda_hora = 13)) Then pjueves13 = pjueves13 + potencia End If If ((celda_dia = 4) And (celda_hora = 14)) Then pjueves14 = pjueves14 + potencia End If If ((celda_dia = 4) And (celda_hora = 15)) Then pjueves15 = pjueves15 + potencia End If If ((celda_dia = 4) And (celda_hora = 16)) Then pjueves16 = pjueves16 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .34
If ((celda_dia = 4) And (celda_hora = 17)) Then pjueves17 = pjueves17 + potencia End If If ((celda_dia = 4) And (celda_hora = 18)) Then pjueves18 = pjueves18 + potencia End If If ((celda_dia = 4) And (celda_hora = 19)) Then pjueves19 = pjueves19 + potencia End If If ((celda_dia = 4) And (celda_hora = 20)) Then pjueves20 = pjueves20 + potencia End If If ((celda_dia = 4) And (celda_hora = 21)) Then pjueves21 = pjueves21 + potencia End If If ((celda_dia = 4) And (celda_hora = 22)) Then pjueves22 = pjueves22 + potencia End If If ((celda_dia = 4) And (celda_hora = 23)) Then pjueves23 = pjueves23 + potencia End If If ((celda_dia = 5) And (celda_hora = 0)) Then pviernes0 = pviernes0 + potencia End If If ((celda_dia = 5) And (celda_hora = 1)) Then pviernes1 = pviernes1 + potencia End If If ((celda_dia = 5) And (celda_hora = 2)) Then pviernes2 = pviernes2 + potencia End If If ((celda_dia = 5) And (celda_hora = 3)) Then pviernes3 = pviernes3 + potencia End If If ((celda_dia = 5) And (celda_hora = 4)) Then pviernes4 = pviernes4 + potencia End If If ((celda_dia = 5) And (celda_hora = 5)) Then pviernes5 = pviernes5 + potencia End If If ((celda_dia = 5) And (celda_hora = 6)) Then pviernes6 = pviernes6 + potencia End If If ((celda_dia = 5) And (celda_hora = 7)) Then pviernes7 = pviernes7 + potencia End If If ((celda_dia = 5) And (celda_hora = 8)) Then pviernes8 = pviernes8 + potencia End If If ((celda_dia = 5) And (celda_hora = 9)) Then pviernes9 = pviernes9 + potencia End If If ((celda_dia = 5) And (celda_hora = 10)) Then pviernes10 = pviernes10 + potencia End If If ((celda_dia = 5) And (celda_hora = 11)) Then pviernes11 = pviernes11 + potencia End If If ((celda_dia = 5) And (celda_hora = 12)) Then pviernes12 = pviernes12 + potencia End If If ((celda_dia = 5) And (celda_hora = 13)) Then pviernes13 = pviernes13 + potencia End If If ((celda_dia = 5) And (celda_hora = 14)) Then pviernes14 = pviernes14 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .35
If ((celda_dia = 5) And (celda_hora = 15)) Then pviernes15 = pviernes15 + potencia End If If ((celda_dia = 5) And (celda_hora = 16)) Then pviernes16 = pviernes16 + potencia End If If ((celda_dia = 5) And (celda_hora = 17)) Then pviernes17 = pviernes17 + potencia End If If ((celda_dia = 5) And (celda_hora = 18)) Then pviernes18 = pviernes18 + potencia End If If ((celda_dia = 5) And (celda_hora = 19)) Then pviernes19 = pviernes19 + potencia End If If ((celda_dia = 5) And (celda_hora = 20)) Then pviernes20 = pviernes20 + potencia End If If ((celda_dia = 5) And (celda_hora = 21)) Then pviernes21 = pviernes21 + potencia End If If ((celda_dia = 5) And (celda_hora = 22)) Then pviernes22 = pviernes22 + potencia End If If ((celda_dia = 5) And (celda_hora = 23)) Then pviernes23 = pviernes23 + potencia End If If ((celda_dia = 6) And (celda_hora = 0)) Then psabado0 = psabado0 + potencia End If If ((celda_dia = 6) And (celda_hora = 1)) Then psabado1 = psabado1 + potencia End If If ((celda_dia = 6) And (celda_hora = 2)) Then psabado2 = psabado2 + potencia End If If ((celda_dia = 6) And (celda_hora = 3)) Then psabado3 = psabado3 + potencia End If If ((celda_dia = 6) And (celda_hora = 4)) Then psabado4 = psabado4 + potencia End If If ((celda_dia = 6) And (celda_hora = 5)) Then psabado5 = psabado5 + potencia End If If ((celda_dia = 6) And (celda_hora = 6)) Then psabado6 = psabado6 + potencia End If If ((celda_dia = 6) And (celda_hora = 7)) Then psabado7 = psabado7 + potencia End If If ((celda_dia = 6) And (celda_hora = 8)) Then psabado8 = psabado8 + potencia End If If ((celda_dia = 6) And (celda_hora = 9)) Then psabado9 = psabado9 + potencia End If If ((celda_dia = 6) And (celda_hora = 10)) Then psabado10 = psabado10 + potencia End If If ((celda_dia = 6) And (celda_hora = 11)) Then psabado11 = psabado11 + potencia End If If ((celda_dia = 6) And (celda_hora = 12)) Then psabado12 = psabado12 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .36
If ((celda_dia = 6) And (celda_hora = 13)) Then psabado13 = psabado13 + potencia End If If ((celda_dia = 6) And (celda_hora = 14)) Then psabado14 = psabado14 + potencia End If If ((celda_dia = 6) And (celda_hora = 15)) Then psabado15 = psabado15 + potencia End If If ((celda_dia = 6) And (celda_hora = 16)) Then psabado16 = psabado16 + potencia End If If ((celda_dia = 6) And (celda_hora = 17)) Then psabado17 = psabado17 + potencia End If If ((celda_dia = 6) And (celda_hora = 18)) Then psabado18 = psabado18 + potencia End If If ((celda_dia = 6) And (celda_hora = 19)) Then psabado19 = psabado19 + potencia End If If ((celda_dia = 6) And (celda_hora = 20)) Then psabado20 = psabado20 + potencia End If If ((celda_dia = 6) And (celda_hora = 21)) Then psabado21 = psabado21 + potencia End If If ((celda_dia = 6) And (celda_hora = 22)) Then psabado22 = psabado22 + potencia End If If ((celda_dia = 6) And (celda_hora = 23)) Then psabado23 = psabado23 + potencia End If If ((celda_dia = 7) And (celda_hora = 0)) Then pdomingo0 = pdomingo0 + potencia End If If ((celda_dia = 7) And (celda_hora = 1)) Then pdomingo1 = pdomingo1 + potencia End If If ((celda_dia = 7) And (celda_hora = 2)) Then pdomingo2 = pdomingo2 + potencia End If If ((celda_dia = 7) And (celda_hora = 3)) Then pdomingo3 = pdomingo3 + potencia End If If ((celda_dia = 7) And (celda_hora = 4)) Then pdomingo4 = pdomingo4 + potencia End If If ((celda_dia = 7) And (celda_hora = 5)) Then pdomingo5 = pdomingo5 + potencia End If If ((celda_dia = 7) And (celda_hora = 6)) Then pdomingo6 = pdomingo6 + potencia End If If ((celda_dia = 7) And (celda_hora = 7)) Then pdomingo7 = pdomingo7 + potencia End If If ((celda_dia = 7) And (celda_hora = 8)) Then pdomingo8 = pdomingo8 + potencia End If If ((celda_dia = 7) And (celda_hora = 9)) Then pdomingo9 = pdomingo9 + potencia End If If ((celda_dia = 7) And (celda_hora = 10)) Then pdomingo10 = pdomingo10 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .37
If ((celda_dia = 7) And (celda_hora = 11)) Then pdomingo11 = pdomingo11 + potencia End If If ((celda_dia = 7) And (celda_hora = 12)) Then pdomingo12 = pdomingo12 + potencia End If If ((celda_dia = 7) And (celda_hora = 13)) Then pdomingo13 = pdomingo13 + potencia End If If ((celda_dia = 7) And (celda_hora = 14)) Then pdomingo14 = pdomingo14 + potencia End If If ((celda_dia = 7) And (celda_hora = 15)) Then pdomingo15 = pdomingo15 + potencia End If If ((celda_dia = 7) And (celda_hora = 16)) Then pdomingo16 = pdomingo16 + potencia End If If ((celda_dia = 7) And (celda_hora = 17)) Then pdomingo17 = pdomingo17 + potencia End If If ((celda_dia = 7) And (celda_hora = 18)) Then pdomingo18 = pdomingo18 + potencia End If If ((celda_dia = 7) And (celda_hora = 19)) Then pdomingo19 = pdomingo19 + potencia End If If ((celda_dia = 7) And (celda_hora = 20)) Then pdomingo20 = pdomingo20 + potencia End If If ((celda_dia = 7) And (celda_hora = 21)) Then pdomingo21 = pdomingo21 + potencia End If If ((celda_dia = 7) And (celda_hora = 22)) Then pdomingo22 = pdomingo22 + potencia End If If ((celda_dia = 7) And (celda_hora = 23)) Then pdomingo23 = pdomingo23 + potencia End If Next fila Hoja2.Range("B34").Select ActiveCell.FormulaR1C1 = plunes0 Hoja2.Range("B35").Select ActiveCell.FormulaR1C1 = plunes1 Hoja2.Range("B36").Select ActiveCell.FormulaR1C1 = plunes2 Hoja2.Range("B37").Select ActiveCell.FormulaR1C1 = plunes3 Hoja2.Range("B38").Select ActiveCell.FormulaR1C1 = plunes4 Hoja2.Range("B39").Select ActiveCell.FormulaR1C1 = plunes5 Hoja2.Range("B40").Select ActiveCell.FormulaR1C1 = plunes6 Hoja2.Range("B41").Select ActiveCell.FormulaR1C1 = plunes7 Hoja2.Range("B42").Select ActiveCell.FormulaR1C1 = plunes8 Hoja2.Range("B43").Select ActiveCell.FormulaR1C1 = plunes9 Hoja2.Range("B44").Select ActiveCell.FormulaR1C1 = plunes10 Hoja2.Range("B45").Select ActiveCell.FormulaR1C1 = plunes11 Hoja2.Range("B46").Select
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .38
ActiveCell.FormulaR1C1 = plunes12 Hoja2.Range("B47").Select ActiveCell.FormulaR1C1 = plunes13 Hoja2.Range("B48").Select ActiveCell.FormulaR1C1 = plunes14 Hoja2.Range("B49").Select ActiveCell.FormulaR1C1 = plunes15 Hoja2.Range("B50").Select ActiveCell.FormulaR1C1 = plunes16 Hoja2.Range("B51").Select ActiveCell.FormulaR1C1 = plunes17 Hoja2.Range("B52").Select ActiveCell.FormulaR1C1 = plunes18 Hoja2.Range("B53").Select ActiveCell.FormulaR1C1 = plunes19 Hoja2.Range("B54").Select ActiveCell.FormulaR1C1 = plunes20 Hoja2.Range("B55").Select ActiveCell.FormulaR1C1 = plunes21 Hoja2.Range("B56").Select ActiveCell.FormulaR1C1 = plunes22 Hoja2.Range("B57").Select ActiveCell.FormulaR1C1 = plunes23 Hoja2.Range("C34").Select ActiveCell.FormulaR1C1 = pmartes0 Hoja2.Range("C35").Select ActiveCell.FormulaR1C1 = pmartes1 Hoja2.Range("C36").Select ActiveCell.FormulaR1C1 = pmartes2 Hoja2.Range("C37").Select ActiveCell.FormulaR1C1 = pmartes3 Hoja2.Range("C38").Select ActiveCell.FormulaR1C1 = pmartes4 Hoja2.Range("C39").Select ActiveCell.FormulaR1C1 = pmartes5 Hoja2.Range("C40").Select ActiveCell.FormulaR1C1 = pmartes6 Hoja2.Range("C41").Select ActiveCell.FormulaR1C1 = pmartes7 Hoja2.Range("C42").Select ActiveCell.FormulaR1C1 = pmartes8 Hoja2.Range("C43").Select ActiveCell.FormulaR1C1 = pmartes9 Hoja2.Range("C44").Select ActiveCell.FormulaR1C1 = pmartes10 Hoja2.Range("C45").Select ActiveCell.FormulaR1C1 = pmartes11 Hoja2.Range("C46").Select ActiveCell.FormulaR1C1 = pmartes12 Hoja2.Range("C47").Select ActiveCell.FormulaR1C1 = pmartes13 Hoja2.Range("C48").Select ActiveCell.FormulaR1C1 = pmartes14 Hoja2.Range("C49").Select ActiveCell.FormulaR1C1 = pmartes15 Hoja2.Range("C50").Select ActiveCell.FormulaR1C1 = pmartes16 Hoja2.Range("C51").Select ActiveCell.FormulaR1C1 = pmartes17 Hoja2.Range("C52").Select ActiveCell.FormulaR1C1 = pmartes18 Hoja2.Range("C53").Select ActiveCell.FormulaR1C1 = pmartes19 Hoja2.Range("C54").Select ActiveCell.FormulaR1C1 = pmartes20 Hoja2.Range("C55").Select ActiveCell.FormulaR1C1 = pmartes21
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .39
Hoja2.Range("C56").Select ActiveCell.FormulaR1C1 = pmartes22 Hoja2.Range("C57").Select ActiveCell.FormulaR1C1 = pmartes23 Hoja2.Range("D34").Select ActiveCell.FormulaR1C1 = pmiercoles0 Hoja2.Range("D35").Select ActiveCell.FormulaR1C1 = pmiercoles1 Hoja2.Range("D36").Select ActiveCell.FormulaR1C1 = pmiercoles2 Hoja2.Range("D37").Select ActiveCell.FormulaR1C1 = pmiercoles3 Hoja2.Range("D38").Select ActiveCell.FormulaR1C1 = pmiercoles4 Hoja2.Range("D39").Select ActiveCell.FormulaR1C1 = pmiercoles5 Hoja2.Range("D40").Select ActiveCell.FormulaR1C1 = pmiercoles6 Hoja2.Range("D41").Select ActiveCell.FormulaR1C1 = pmiercoles7 Hoja2.Range("D42").Select ActiveCell.FormulaR1C1 = pmiercoles8 Hoja2.Range("D43").Select ActiveCell.FormulaR1C1 = pmiercoles9 Hoja2.Range("D44").Select ActiveCell.FormulaR1C1 = pmiercoles10 Hoja2.Range("D45").Select ActiveCell.FormulaR1C1 = pmiercoles11 Hoja2.Range("D46").Select ActiveCell.FormulaR1C1 = pmiercoles12 Hoja2.Range("D47").Select ActiveCell.FormulaR1C1 = pmiercoles13 Hoja2.Range("D48").Select ActiveCell.FormulaR1C1 = pmiercoles14 Hoja2.Range("D49").Select ActiveCell.FormulaR1C1 = pmiercoles15 Hoja2.Range("D50").Select ActiveCell.FormulaR1C1 = pmiercoles16 Hoja2.Range("D51").Select ActiveCell.FormulaR1C1 = pmiercoles17 Hoja2.Range("D52").Select ActiveCell.FormulaR1C1 = pmiercoles18 Hoja2.Range("D53").Select ActiveCell.FormulaR1C1 = pmiercoles19 Hoja2.Range("D54").Select ActiveCell.FormulaR1C1 = pmiercoles20 Hoja2.Range("D55").Select ActiveCell.FormulaR1C1 = pmiercoles21 Hoja2.Range("D56").Select ActiveCell.FormulaR1C1 = pmiercoles22 Hoja2.Range("D57").Select ActiveCell.FormulaR1C1 = pmiercoles23 Hoja2.Range("E34").Select ActiveCell.FormulaR1C1 = pjueves0 Hoja2.Range("E35").Select ActiveCell.FormulaR1C1 = pjueves1 Hoja2.Range("E36").Select ActiveCell.FormulaR1C1 = pjueves2 Hoja2.Range("E37").Select ActiveCell.FormulaR1C1 = pjueves3 Hoja2.Range("E38").Select ActiveCell.FormulaR1C1 = pjueves4 Hoja2.Range("E39").Select ActiveCell.FormulaR1C1 = pjueves5 Hoja2.Range("E40").Select ActiveCell.FormulaR1C1 = pjueves6
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .40
Hoja2.Range("E41").Select ActiveCell.FormulaR1C1 = pjueves7 Hoja2.Range("E42").Select ActiveCell.FormulaR1C1 = pjueves8 Hoja2.Range("E43").Select ActiveCell.FormulaR1C1 = pjueves9 Hoja2.Range("E44").Select ActiveCell.FormulaR1C1 = pjueves10 Hoja2.Range("E45").Select ActiveCell.FormulaR1C1 = pjueves11 Hoja2.Range("E46").Select ActiveCell.FormulaR1C1 = pjueves12 Hoja2.Range("E47").Select ActiveCell.FormulaR1C1 = pjueves13 Hoja2.Range("E48").Select ActiveCell.FormulaR1C1 = pjueves14 Hoja2.Range("E49").Select ActiveCell.FormulaR1C1 = pjueves15 Hoja2.Range("E50").Select ActiveCell.FormulaR1C1 = pjueves16 Hoja2.Range("E51").Select ActiveCell.FormulaR1C1 = pjueves17 Hoja2.Range("E52").Select ActiveCell.FormulaR1C1 = pjueves18 Hoja2.Range("E53").Select ActiveCell.FormulaR1C1 = pjueves19 Hoja2.Range("E54").Select ActiveCell.FormulaR1C1 = pjueves20 Hoja2.Range("E55").Select ActiveCell.FormulaR1C1 = pjueves21 Hoja2.Range("E56").Select ActiveCell.FormulaR1C1 = pjueves22 Hoja2.Range("E57").Select ActiveCell.FormulaR1C1 = pjueves23 Hoja2.Range("F34").Select ActiveCell.FormulaR1C1 = pviernes0 Hoja2.Range("F35").Select ActiveCell.FormulaR1C1 = pviernes1 Hoja2.Range("F36").Select ActiveCell.FormulaR1C1 = pviernes2 Hoja2.Range("F37").Select ActiveCell.FormulaR1C1 = pviernes3 Hoja2.Range("F38").Select ActiveCell.FormulaR1C1 = pviernes4 Hoja2.Range("F39").Select ActiveCell.FormulaR1C1 = pviernes5 Hoja2.Range("F40").Select ActiveCell.FormulaR1C1 = pviernes6 Hoja2.Range("F41").Select ActiveCell.FormulaR1C1 = pviernes7 Hoja2.Range("F42").Select ActiveCell.FormulaR1C1 = pviernes8 Hoja2.Range("F43").Select ActiveCell.FormulaR1C1 = pviernes9 Hoja2.Range("F44").Select ActiveCell.FormulaR1C1 = pviernes10 Hoja2.Range("F45").Select ActiveCell.FormulaR1C1 = pviernes11 Hoja2.Range("F46").Select ActiveCell.FormulaR1C1 = pviernes12 Hoja2.Range("F47").Select ActiveCell.FormulaR1C1 = pviernes13 Hoja2.Range("F48").Select ActiveCell.FormulaR1C1 = pviernes14 Hoja2.Range("F49").Select ActiveCell.FormulaR1C1 = pviernes15 Hoja2.Range("F50").Select
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .41
ActiveCell.FormulaR1C1 = pviernes16 Hoja2.Range("F51").Select ActiveCell.FormulaR1C1 = pviernes17 Hoja2.Range("F52").Select ActiveCell.FormulaR1C1 = pviernes18 Hoja2.Range("F53").Select ActiveCell.FormulaR1C1 = pviernes19 Hoja2.Range("F54").Select ActiveCell.FormulaR1C1 = pviernes20 Hoja2.Range("F55").Select ActiveCell.FormulaR1C1 = pviernes21 Hoja2.Range("F56").Select ActiveCell.FormulaR1C1 = pviernes22 Hoja2.Range("F57").Select ActiveCell.FormulaR1C1 = pviernes23 Hoja2.Range("G34").Select ActiveCell.FormulaR1C1 = psabado0 Hoja2.Range("G35").Select ActiveCell.FormulaR1C1 = psabado1 Hoja2.Range("G36").Select ActiveCell.FormulaR1C1 = psabado2 Hoja2.Range("G37").Select ActiveCell.FormulaR1C1 = psabado3 Hoja2.Range("G38").Select ActiveCell.FormulaR1C1 = psabado4 Hoja2.Range("G39").Select ActiveCell.FormulaR1C1 = psabado5 Hoja2.Range("G40").Select ActiveCell.FormulaR1C1 = psabado6 Hoja2.Range("G41").Select ActiveCell.FormulaR1C1 = psabado7 Hoja2.Range("G42").Select ActiveCell.FormulaR1C1 = psabado8 Hoja2.Range("G43").Select ActiveCell.FormulaR1C1 = psabado9 Hoja2.Range("G44").Select ActiveCell.FormulaR1C1 = psabado10 Hoja2.Range("G45").Select ActiveCell.FormulaR1C1 = psabado11 Hoja2.Range("G46").Select ActiveCell.FormulaR1C1 = psabado12 Hoja2.Range("G47").Select ActiveCell.FormulaR1C1 = psabado13 Hoja2.Range("G48").Select ActiveCell.FormulaR1C1 = psabado14 Hoja2.Range("G49").Select ActiveCell.FormulaR1C1 = psabado15 Hoja2.Range("G50").Select ActiveCell.FormulaR1C1 = psabado16 Hoja2.Range("G51").Select ActiveCell.FormulaR1C1 = psabado17 Hoja2.Range("G52").Select ActiveCell.FormulaR1C1 = psabado18 Hoja2.Range("G53").Select ActiveCell.FormulaR1C1 = psabado19 Hoja2.Range("G54").Select ActiveCell.FormulaR1C1 = psabado20 Hoja2.Range("G55").Select ActiveCell.FormulaR1C1 = psabado21 Hoja2.Range("G56").Select ActiveCell.FormulaR1C1 = psabado22 Hoja2.Range("G57").Select ActiveCell.FormulaR1C1 = psabado23 Hoja2.Range("H34").Select ActiveCell.FormulaR1C1 = pdomingo0 Hoja2.Range("H35").Select
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .42
ActiveCell.FormulaR1C1 = pdomingo1 Hoja2.Range("H36").Select ActiveCell.FormulaR1C1 = pdomingo2 Hoja2.Range("H37").Select ActiveCell.FormulaR1C1 = pdomingo3 Hoja2.Range("H38").Select ActiveCell.FormulaR1C1 = pdomingo4 Hoja2.Range("H39").Select ActiveCell.FormulaR1C1 = pdomingo5 Hoja2.Range("H40").Select ActiveCell.FormulaR1C1 = pdomingo6 Hoja2.Range("H41").Select ActiveCell.FormulaR1C1 = pdomingo7 Hoja2.Range("H42").Select ActiveCell.FormulaR1C1 = pdomingo8 Hoja2.Range("H43").Select ActiveCell.FormulaR1C1 = pdomingo9 Hoja2.Range("H44").Select ActiveCell.FormulaR1C1 = pdomingo10 Hoja2.Range("H45").Select ActiveCell.FormulaR1C1 = pdomingo11 Hoja2.Range("H46").Select ActiveCell.FormulaR1C1 = pdomingo12 Hoja2.Range("H47").Select ActiveCell.FormulaR1C1 = pdomingo13 Hoja2.Range("H48").Select ActiveCell.FormulaR1C1 = pdomingo14 Hoja2.Range("H49").Select ActiveCell.FormulaR1C1 = pdomingo15 Hoja2.Range("H50").Select ActiveCell.FormulaR1C1 = pdomingo16 Hoja2.Range("H51").Select ActiveCell.FormulaR1C1 = pdomingo17 Hoja2.Range("H52").Select ActiveCell.FormulaR1C1 = pdomingo18 Hoja2.Range("H53").Select ActiveCell.FormulaR1C1 = pdomingo19 Hoja2.Range("H54").Select ActiveCell.FormulaR1C1 = pdomingo20 Hoja2.Range("H55").Select ActiveCell.FormulaR1C1 = pdomingo21 Hoja2.Range("H56").Select ActiveCell.FormulaR1C1 = pdomingo22 Hoja2.Range("H57").Select ActiveCell.FormulaR1C1 = pdomingo23 End Sub Sub Pot_media_dia_hora() Dim lunes As Long Dim martes As Long Dim miercoles As Long Dim jueves As Long Dim viernes As Long Dim sabado As Long Dim domingo As Long Hoja2.Activate lunes = Hoja1.Cells(2, 14) martes = Hoja1.Cells(3, 14) miercoles = Hoja1.Cells(4, 14) jueves = Hoja1.Cells(5, 14) viernes = Hoja1.Cells(6, 14) sabado = Hoja1.Cells(7, 14)
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .43
domingo = Hoja1.Cells(8, 14) fila = 5 columna = 2 For fila = 5 To 28 Hoja2.Cells(fila, columna) = Hoja2.Cells(fila + 29, columna) / lunes Next fila For fila = 5 To 28 Hoja2.Cells(fila, columna + 1) = Hoja2.Cells(fila + 29, columna + 1) / martes Next fila For fila = 5 To 28 Hoja2.Cells(fila, columna + 2) = Hoja2.Cells(fila + 29, columna + 2) / miercoles Next fila For fila = 5 To 28 Hoja2.Cells(fila, columna + 3) = Hoja2.Cells(fila + 29, columna + 3) / jueves Next fila For fila = 5 To 28 Hoja2.Cells(fila, columna + 4) = Hoja2.Cells(fila + 29, columna + 4) / viernes Next fila For fila = 5 To 28 Hoja2.Cells(fila, columna + 5) = Hoja2.Cells(fila + 29, columna + 5) / sabado Next fila For fila = 5 To 28 Hoja2.Cells(fila, columna + 6) = Hoja2.Cells(fila + 29, columna + 6) / domingo Next fila End Sub Sub Energia_periodo_mes() Hoja2.Activate Dim n_dias_año As Long Dim fila As Long Dim periodo As Long Dim mes As Long Dim dia_mes As Long Dim potencia As Long Dim energia_11 As Long Dim energia_12 As Long Dim energia_13 As Long Dim energia_14 As Long Dim energia_15 As Long Dim energia_16 As Long Dim energia_21 As Long Dim energia_22 As Long Dim energia_23 As Long Dim energia_24 As Long Dim energia_25 As Long Dim energia_26 As Long Dim energia_31 As Long Dim energia_32 As Long Dim energia_33 As Long Dim energia_34 As Long Dim energia_35 As Long Dim energia_36 As Long Dim energia_41 As Long Dim energia_42 As Long Dim energia_43 As Long Dim energia_44 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .44
Dim energia_45 As Long Dim energia_46 As Long Dim energia_51 As Long Dim energia_52 As Long Dim energia_53 As Long Dim energia_54 As Long Dim energia_55 As Long Dim energia_56 As Long Dim energia_61 As Long Dim energia_62 As Long Dim energia_63 As Long Dim energia_64 As Long Dim energia_65 As Long Dim energia_66 As Long Dim energia_71 As Long Dim energia_72 As Long Dim energia_73 As Long Dim energia_74 As Long Dim energia_75 As Long Dim energia_76 As Long Dim energia_81 As Long Dim energia_82 As Long Dim energia_83 As Long Dim energia_84 As Long Dim energia_85 As Long Dim energia_86 As Long Dim energia_91 As Long Dim energia_92 As Long Dim energia_93 As Long Dim energia_94 As Long Dim energia_95 As Long Dim energia_96 As Long Dim energia_101 As Long Dim energia_102 As Long Dim energia_103 As Long Dim energia_104 As Long Dim energia_105 As Long Dim energia_106 As Long Dim energia_111 As Long Dim energia_112 As Long Dim energia_113 As Long Dim energia_114 As Long Dim energia_115 As Long Dim energia_116 As Long Dim energia_121 As Long Dim energia_122 As Long Dim energia_123 As Long Dim energia_124 As Long Dim energia_125 As Long Dim energia_126 As Long Dim energia_131 As Long Dim energia_132 As Long Dim energia_133 As Long Dim energia_134 As Long Dim energia_135 As Long Dim energia_136 As Long fila = 2 columna = 8
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .45
n_dias_año = Hoja1.Cells(6, 9) energia_11 = 0 energia_12 = 0 energia_13 = 0 energia_14 = 0 energia_15 = 0 energia_16 = 0 energia_21 = 0 energia_22 = 0 energia_23 = 0 energia_24 = 0 energia_25 = 0 energia_26 = 0 energia_31 = 0 energia_32 = 0 energia_33 = 0 energia_34 = 0 energia_35 = 0 energia_36 = 0 energia_41 = 0 energia_42 = 0 energia_43 = 0 energia_44 = 0 energia_45 = 0 energia_46 = 0 energia_51 = 0 energia_52 = 0 energia_53 = 0 energia_54 = 0 energia_55 = 0 energia_56 = 0 energia_61 = 0 energia_62 = 0 energia_63 = 0 energia_64 = 0 energia_65 = 0 energia_66 = 0 energia_71 = 0 energia_72 = 0 energia_73 = 0 energia_74 = 0 energia_75 = 0 energia_76 = 0 energia_81 = 0 energia_82 = 0 energia_83 = 0 energia_84 = 0 energia_85 = 0 energia_86 = 0 energia_91 = 0 energia_92 = 0 energia_93 = 0 energia_94 = 0 energia_95 = 0 energia_96 = 0 energia_101 = 0 energia_102 = 0 energia_103 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .46
energia_104 = 0 energia_105 = 0 energia_106 = 0 energia_111 = 0 energia_112 = 0 energia_113 = 0 energia_114 = 0 energia_115 = 0 energia_116 = 0 energia_121 = 0 energia_122 = 0 energia_123 = 0 energia_124 = 0 energia_125 = 0 energia_126 = 0 energia_131 = 0 energia_132 = 0 energia_133 = 0 energia_134 = 0 energia_135 = 0 energia_136 = 0 For fila = 2 To ((n_dias_año * 24) + 1) potencia = Hoja1.Cells(fila, columna) periodo = Hoja1.Cells(fila, columna + 14) mes = Hoja1.Cells(fila, columna + 10) dia_mes = Hoja1.Cells(fila, columna + 12) If (mes = 1) And (periodo = 1) Then energia_11 = energia_11 + potencia End If If (mes = 1) And (periodo = 2) Then energia_12 = energia_12 + potencia End If If (mes = 1) And (periodo = 3) Then energia_13 = energia_13 + potencia End If If (mes = 1) And (periodo = 4) Then energia_14 = energia_14 + potencia End If If (mes = 1) And (periodo = 5) Then energia_15 = energia_15 + potencia End If If (mes = 1) And (periodo = 6) Then energia_16 = energia_16 + potencia End If If (mes = 2) And (periodo = 1) Then energia_21 = energia_21 + potencia End If If (mes = 2) And (periodo = 2) Then energia_22 = energia_22 + potencia End If If (mes = 2) And (periodo = 3) Then energia_23 = energia_23 + potencia End If If (mes = 2) And (periodo = 4) Then energia_24 = energia_24 + potencia End If If (mes = 2) And (periodo = 5) Then energia_25 = energia_25 + potencia End If If (mes = 2) And (periodo = 6) Then energia_26 = energia_26 + potencia
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .47
End If If (mes = 3) And (periodo = 1) Then energia_31 = energia_31 + potencia End If If (mes = 3) And (periodo = 2) Then energia_32 = energia_32 + potencia End If If (mes = 3) And (periodo = 3) Then energia_33 = energia_33 + potencia End If If (mes = 3) And (periodo = 4) Then energia_34 = energia_34 + potencia End If If (mes = 3) And (periodo = 5) Then energia_35 = energia_35 + potencia End If If (mes = 3) And (periodo = 6) Then energia_36 = energia_36 + potencia End If If (mes = 4) And (periodo = 1) Then energia_41 = energia_41 + potencia End If If (mes = 4) And (periodo = 2) Then energia_42 = energia_42 + potencia End If If (mes = 4) And (periodo = 3) Then energia_43 = energia_43 + potencia End If If (mes = 4) And (periodo = 4) Then energia_44 = energia_44 + potencia End If If (mes = 4) And (periodo = 5) Then energia_45 = energia_45 + potencia End If If (mes = 4) And (periodo = 6) Then energia_46 = energia_46 + potencia End If If (mes = 5) And (periodo = 1) Then energia_51 = energia_51 + potencia End If If (mes = 5) And (periodo = 2) Then energia_52 = energia_52 + potencia End If If (mes = 5) And (periodo = 3) Then energia_53 = energia_53 + potencia End If If (mes = 5) And (periodo = 4) Then energia_54 = energia_54 + potencia End If If (mes = 5) And (periodo = 5) Then energia_55 = energia_55 + potencia End If If (mes = 5) And (periodo = 6) Then energia_56 = energia_56 + potencia End If If ((mes = 6) And (dia_mes <= 15) And (periodo = 1)) Then energia_61 = energia_61 + potencia End If If ((mes = 6) And (dia_mes <= 15) And (periodo = 2)) Then energia_62 = energia_62 + potencia End If If ((mes = 6) And (dia_mes <= 15) And (periodo = 3)) Then energia_63 = energia_63 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .48
If ((mes = 6) And (dia_mes <= 15) And (periodo = 4)) Then energia_64 = energia_64 + potencia End If If ((mes = 6) And (dia_mes <= 15) And (periodo = 5)) Then energia_65 = energia_65 + potencia End If If ((mes = 6) And (dia_mes <= 15) And (periodo = 6)) Then energia_66 = energia_66 + potencia End If If ((mes = 6) And (dia_mes > 15) And (periodo = 1)) Then energia_71 = energia_71 + potencia End If If ((mes = 6) And (dia_mes > 15) And (periodo = 2)) Then energia_72 = energia_72 + potencia End If If ((mes = 6) And (dia_mes > 15) And (periodo = 3)) Then energia_73 = energia_73 + potencia End If If ((mes = 6) And (dia_mes > 15) And (periodo = 4)) Then energia_74 = energia_74 + potencia End If If ((mes = 6) And (dia_mes > 15) And (periodo = 5)) Then energia_75 = energia_75 + potencia End If If ((mes = 6) And (dia_mes > 15) And (periodo = 6)) Then energia_76 = energia_76 + potencia End If If (mes = 7) And (periodo = 1) Then energia_81 = energia_81 + potencia End If If (mes = 7) And (periodo = 2) Then energia_82 = energia_82 + potencia End If If (mes = 7) And (periodo = 3) Then energia_83 = energia_83 + potencia End If If (mes = 7) And (periodo = 4) Then energia_84 = energia_84 + potencia End If If (mes = 7) And (periodo = 5) Then energia_85 = energia_85 + potencia End If If (mes = 7) And (periodo = 6) Then energia_86 = energia_86 + potencia End If If (mes = 8) And (periodo = 1) Then energia_91 = energia_91 + potencia End If If (mes = 8) And (periodo = 2) Then energia_92 = energia_92 + potencia End If If (mes = 8) And (periodo = 3) Then energia_93 = energia_93 + potencia End If If (mes = 8) And (periodo = 4) Then energia_94 = energia_94 + potencia End If If (mes = 8) And (periodo = 5) Then energia_95 = energia_95 + potencia End If If (mes = 8) And (periodo = 6) Then energia_96 = energia_96 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .49
If (mes = 9) And (periodo = 1) Then energia_101 = energia_101 + potencia End If If (mes = 9) And (periodo = 2) Then energia_102 = energia_102 + potencia End If If (mes = 9) And (periodo = 3) Then energia_103 = energia_103 + potencia End If If (mes = 9) And (periodo = 4) Then energia_104 = energia_104 + potencia End If If (mes = 9) And (periodo = 5) Then energia_105 = energia_105 + potencia End If If (mes = 9) And (periodo = 6) Then energia_106 = energia_106 + potencia End If If (mes = 10) And (periodo = 1) Then energia_111 = energia_111 + potencia End If If (mes = 10) And (periodo = 2) Then energia_112 = energia_112 + potencia End If If (mes = 10) And (periodo = 3) Then energia_113 = energia_113 + potencia End If If (mes = 10) And (periodo = 4) Then energia_114 = energia_114 + potencia End If If (mes = 10) And (periodo = 5) Then energia_115 = energia_115 + potencia End If If (mes = 10) And (periodo = 6) Then energia_116 = energia_116 + potencia End If If (mes = 11) And (periodo = 1) Then energia_121 = energia_121 + potencia End If If (mes = 11) And (periodo = 2) Then energia_122 = energia_122 + potencia End If If (mes = 11) And (periodo = 3) Then energia_123 = energia_123 + potencia End If If (mes = 11) And (periodo = 4) Then energia_124 = energia_124 + potencia End If If (mes = 11) And (periodo = 5) Then energia_125 = energia_125 + potencia End If If (mes = 11) And (periodo = 6) Then energia_126 = energia_126 + potencia End If If (mes = 12) And (periodo = 1) Then energia_131 = energia_131 + potencia End If If (mes = 12) And (periodo = 2) Then energia_132 = energia_132 + potencia End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .50
If (mes = 12) And (periodo = 3) Then energia_133 = energia_133 + potencia End If If (mes = 12) And (periodo = 4) Then energia_134 = energia_134 + potencia End If If (mes = 12) And (periodo = 5) Then energia_135 = energia_135 + potencia End If If (mes = 12) And (periodo = 6) Then energia_136 = energia_136 + potencia End If Next fila Range("K26").Select ActiveCell.FormulaR1C1 = energia_11 Range("L26").Select ActiveCell.FormulaR1C1 = energia_12 Range("M26").Select ActiveCell.FormulaR1C1 = energia_13 Range("N26").Select ActiveCell.FormulaR1C1 = energia_14 Range("O26").Select ActiveCell.FormulaR1C1 = energia_15 Range("P26").Select ActiveCell.FormulaR1C1 = energia_16 Range("K27").Select ActiveCell.FormulaR1C1 = energia_21 Range("L27").Select ActiveCell.FormulaR1C1 = energia_22 Range("M27").Select ActiveCell.FormulaR1C1 = energia_23 Range("N27").Select ActiveCell.FormulaR1C1 = energia_24 Range("O27").Select ActiveCell.FormulaR1C1 = energia_25 Range("P27").Select ActiveCell.FormulaR1C1 = energia_26 Range("K28").Select ActiveCell.FormulaR1C1 = energia_31 Range("L28").Select ActiveCell.FormulaR1C1 = energia_32 Range("M28").Select ActiveCell.FormulaR1C1 = energia_33 Range("N28").Select ActiveCell.FormulaR1C1 = energia_34 Range("O28").Select ActiveCell.FormulaR1C1 = energia_35 Range("P28").Select ActiveCell.FormulaR1C1 = energia_36 Range("K29").Select ActiveCell.FormulaR1C1 = energia_41 Range("L29").Select ActiveCell.FormulaR1C1 = energia_42 Range("M29").Select ActiveCell.FormulaR1C1 = energia_43 Range("N29").Select ActiveCell.FormulaR1C1 = energia_44 Range("O29").Select ActiveCell.FormulaR1C1 = energia_45 Range("P29").Select ActiveCell.FormulaR1C1 = energia_46
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .51
Range("K30").Select ActiveCell.FormulaR1C1 = energia_51 Range("L30").Select ActiveCell.FormulaR1C1 = energia_52 Range("M30").Select ActiveCell.FormulaR1C1 = energia_53 Range("N30").Select ActiveCell.FormulaR1C1 = energia_54 Range("O30").Select ActiveCell.FormulaR1C1 = energia_55 Range("P30").Select ActiveCell.FormulaR1C1 = energia_56 Range("K31").Select ActiveCell.FormulaR1C1 = energia_61 Range("L31").Select ActiveCell.FormulaR1C1 = energia_62 Range("M31").Select ActiveCell.FormulaR1C1 = energia_63 Range("N31").Select ActiveCell.FormulaR1C1 = energia_64 Range("O31").Select ActiveCell.FormulaR1C1 = energia_65 Range("P31").Select ActiveCell.FormulaR1C1 = energia_66 Range("K32").Select ActiveCell.FormulaR1C1 = energia_71 Range("L32").Select ActiveCell.FormulaR1C1 = energia_72 Range("M32").Select ActiveCell.FormulaR1C1 = energia_73 Range("N32").Select ActiveCell.FormulaR1C1 = energia_74 Range("O32").Select ActiveCell.FormulaR1C1 = energia_75 Range("P32").Select ActiveCell.FormulaR1C1 = energia_76 Range("K33").Select ActiveCell.FormulaR1C1 = energia_81 Range("L33").Select ActiveCell.FormulaR1C1 = energia_82 Range("M33").Select ActiveCell.FormulaR1C1 = energia_83 Range("N33").Select ActiveCell.FormulaR1C1 = energia_84 Range("O33").Select ActiveCell.FormulaR1C1 = energia_85 Range("P33").Select ActiveCell.FormulaR1C1 = energia_86 Range("K34").Select ActiveCell.FormulaR1C1 = energia_91 Range("L34").Select ActiveCell.FormulaR1C1 = energia_92 Range("M34").Select ActiveCell.FormulaR1C1 = energia_93 Range("N34").Select ActiveCell.FormulaR1C1 = energia_94 Range("O34").Select ActiveCell.FormulaR1C1 = energia_95 Range("P34").Select ActiveCell.FormulaR1C1 = energia_96 Range("K35").Select ActiveCell.FormulaR1C1 = energia_101
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .52
Range("L35").Select ActiveCell.FormulaR1C1 = energia_102 Range("M35").Select ActiveCell.FormulaR1C1 = energia_103 Range("N35").Select ActiveCell.FormulaR1C1 = energia_104 Range("O35").Select ActiveCell.FormulaR1C1 = energia_105 Range("P35").Select ActiveCell.FormulaR1C1 = energia_106 Range("K36").Select ActiveCell.FormulaR1C1 = energia_111 Range("L36").Select ActiveCell.FormulaR1C1 = energia_112 Range("M36").Select ActiveCell.FormulaR1C1 = energia_113 Range("N36").Select ActiveCell.FormulaR1C1 = energia_114 Range("O36").Select ActiveCell.FormulaR1C1 = energia_115 Range("P36").Select ActiveCell.FormulaR1C1 = energia_116 Range("K37").Select ActiveCell.FormulaR1C1 = energia_121 Range("L37").Select ActiveCell.FormulaR1C1 = energia_122 Range("M37").Select ActiveCell.FormulaR1C1 = energia_123 Range("N37").Select ActiveCell.FormulaR1C1 = energia_124 Range("O37").Select ActiveCell.FormulaR1C1 = energia_125 Range("P37").Select ActiveCell.FormulaR1C1 = energia_126 Range("K38").Select ActiveCell.FormulaR1C1 = energia_131 Range("L38").Select ActiveCell.FormulaR1C1 = energia_132 Range("M38").Select ActiveCell.FormulaR1C1 = energia_133 Range("N38").Select ActiveCell.FormulaR1C1 = energia_134 Range("O38").Select ActiveCell.FormulaR1C1 = energia_135 Range("P38").Select ActiveCell.FormulaR1C1 = energia_136 End Sub Sub n_dias_periodo_mes() Hoja2.Activate Dim mes As Long Dim periodo As Long Dim dia As Long Dim fila1 As Long Dim columna1 As Long Dim fila2 As Long Dim columna2 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .53
Dim dias11 As Long Dim dias12 As Long Dim dias13 As Long Dim dias14 As Long Dim dias15 As Long Dim dias16 As Long Dim dias21 As Long Dim dias22 As Long Dim dias23 As Long Dim dias24 As Long Dim dias25 As Long Dim dias26 As Long Dim dias31 As Long Dim dias32 As Long Dim dias33 As Long Dim dias34 As Long Dim dias35 As Long Dim dias36 As Long Dim dias41 As Long Dim dias42 As Long Dim dias43 As Long Dim dias44 As Long Dim dias45 As Long Dim dias46 As Long Dim dias51 As Long Dim dias52 As Long Dim dias53 As Long Dim dias54 As Long Dim dias55 As Long Dim dias56 As Long Dim dias61 As Long Dim dias62 As Long Dim dias63 As Long Dim dias64 As Long Dim dias65 As Long Dim dias66 As Long Dim dias71 As Long Dim dias72 As Long Dim dias73 As Long Dim dias74 As Long Dim dias75 As Long Dim dias76 As Long Dim dias81 As Long Dim dias82 As Long Dim dias83 As Long Dim dias84 As Long Dim dias85 As Long Dim dias86 As Long Dim dias91 As Long Dim dias92 As Long Dim dias93 As Long Dim dias94 As Long Dim dias95 As Long Dim dias96 As Long Dim dias101 As Long Dim dias102 As Long Dim dias103 As Long Dim dias104 As Long Dim dias105 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .54
Dim dias106 As Long Dim dias111 As Long Dim dias112 As Long Dim dias113 As Long Dim dias114 As Long Dim dias115 As Long Dim dias116 As Long Dim dias121 As Long Dim dias122 As Long Dim dias123 As Long Dim dias124 As Long Dim dias125 As Long Dim dias126 As Long Dim dias131 As Long Dim dias132 As Long Dim dias133 As Long Dim dias134 As Long Dim dias135 As Long Dim dias136 As Long Dim n_dias_año As Long n_dias_año = Hoja1.Cells(6, 9) fila1 = 2 fila2 = 47 columna1 = 22 columna2 = 11 dias11 = 0 dias12 = 0 dias13 = 0 dias14 = 0 dias15 = 0 dias16 = 0 dias21 = 0 dias22 = 0 dias23 = 0 dias24 = 0 dias25 = 0 dias26 = 0 dias31 = 0 dias32 = 0 dias33 = 0 dias34 = 0 dias35 = 0 dias36 = 0 dias41 = 0 dias42 = 0 dias43 = 0 dias44 = 0 dias45 = 0 dias46 = 0 dias51 = 0 dias52 = 0 dias53 = 0 dias54 = 0 dias55 = 0 dias56 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .55
dias61 = 0 dias62 = 0 dias63 = 0 dias64 = 0 dias65 = 0 dias66 = 0 dias71 = 0 dias72 = 0 dias73 = 0 dias74 = 0 dias75 = 0 dias76 = 0 dias81 = 0 dias82 = 0 dias83 = 0 dias84 = 0 dias85 = 0 dias86 = 0 dias91 = 0 dias92 = 0 dias93 = 0 dias94 = 0 dias95 = 0 dias96 = 0 dias101 = 0 dias102 = 0 dias103 = 0 dias104 = 0 dias105 = 0 dias106 = 0 dias111 = 0 dias112 = 0 dias113 = 0 dias114 = 0 dias115 = 0 dias116 = 0 dias121 = 0 dias122 = 0 dias123 = 0 dias124 = 0 dias125 = 0 dias126 = 0 dias131 = 0 dias132 = 0 dias133 = 0 dias134 = 0 dias135 = 0 dias136 = 0 For fila1 = 2 To ((n_dias_año * 24) + 1) periodo = Hoja1.Cells(fila1, columna1) dia = Hoja1.Cells(fila1, columna1 2) mes = Hoja1.Cells(fila1, columna1 4) If ((mes = 1) And (periodo = 1)) Then dias11 = dias11 + 1 End If If ((mes = 1) And (periodo = 2)) Then dias12 = dias12 + 1 End If If ((mes = 1) And (periodo = 3)) Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .56
dias13 = dias13 + 1 End If If ((mes = 1) And (periodo = 4)) Then dias14 = dias14 + 1 End If If ((mes = 1) And (periodo = 5)) Then dias15 = dias15 + 1 End If If ((mes = 1) And (periodo = 6)) Then dias16 = dias16 + 1 End If If ((mes = 2) And (periodo = 1)) Then dias21 = dias21 + 1 End If If ((mes = 2) And (periodo = 2)) Then dias22 = dias22 + 1 End If If ((mes = 2) And (periodo = 3)) Then dias23 = dias23 + 1 End If If ((mes = 2) And (periodo = 4)) Then dias24 = dias24 + 1 End If If ((mes = 2) And (periodo = 5)) Then dias25 = dias25 + 1 End If If ((mes = 2) And (periodo = 6)) Then dias26 = dias26 + 1 End If If ((mes = 3) And (periodo = 1)) Then dias31 = dias31 + 1 End If If ((mes = 3) And (periodo = 2)) Then dias32 = dias32 + 1 End If If ((mes = 3) And (periodo = 3)) Then dias33 = dias33 + 1 End If If ((mes = 3) And (periodo = 4)) Then dias34 = dias34 + 1 End If If ((mes = 3) And (periodo = 5)) Then dias35 = dias35 + 1 End If If ((mes = 3) And (periodo = 6)) Then dias36 = dias36 + 1 End If If ((mes = 4) And (periodo = 1)) Then dias41 = dias41 + 1 End If If ((mes = 4) And (periodo = 2)) Then dias42 = dias42 + 1 End If If ((mes = 4) And (periodo = 3)) Then dias43 = dias43 + 1 End If If ((mes = 4) And (periodo = 4)) Then dias44 = dias44 + 1 End If If ((mes = 4) And (periodo = 5)) Then dias45 = dias45 + 1 End If If ((mes = 4) And (periodo = 6)) Then dias46 = dias46 + 1 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .57
If ((mes = 5) And (periodo = 1)) Then dias51 = dias51 + 1 End If If ((mes = 5) And (periodo = 2)) Then dias52 = dias52 + 1 End If If ((mes = 5) And (periodo = 3)) Then dias53 = dias53 + 1 End If If ((mes = 5) And (periodo = 4)) Then dias54 = dias54 + 1 End If If ((mes = 5) And (periodo = 5)) Then dias55 = dias55 + 1 End If If ((mes = 5) And (periodo = 6)) Then dias56 = dias56 + 1 End If If ((mes = 6) And (periodo = 1) And (dia <= 15)) Then dias61 = dias61 + 1 End If If ((mes = 6) And (periodo = 2) And (dia <= 15)) Then dias62 = dias62 + 1 End If If ((mes = 6) And (periodo = 3) And (dia <= 15)) Then dias63 = dias63 + 1 End If If ((mes = 6) And (periodo = 4) And (dia <= 15)) Then dias64 = dias64 + 1 End If If ((mes = 6) And (periodo = 5) And (dia <= 15)) Then dias65 = dias65 + 1 End If If ((mes = 6) And (periodo = 6) And (dia <= 15)) Then dias66 = dias66 + 1 End If If ((mes = 6) And (periodo = 1) And (dia > 15)) Then dias71 = dias71 + 1 End If If ((mes = 6) And (periodo = 2) And (dia > 15)) Then dias72 = dias72 + 1 End If If ((mes = 6) And (periodo = 3) And (dia > 15)) Then dias73 = dias73 + 1 End If If ((mes = 6) And (periodo = 4) And (dia > 15)) Then dias74 = dias74 + 1 End If If ((mes = 6) And (periodo = 5) And (dia > 15)) Then dias75 = dias75 + 1 End If If ((mes = 6) And (periodo = 6) And (dia > 15)) Then dias76 = dias76 + 1 End If If ((mes = 7) And (periodo = 1)) Then dias81 = dias81 + 1 End If If ((mes = 7) And (periodo = 2)) Then dias82 = dias82 + 1 End If If ((mes = 7) And (periodo = 3)) Then dias83 = dias83 + 1 End If If ((mes = 7) And (periodo = 4)) Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .58
dias84 = dias84 + 1 End If If ((mes = 7) And (periodo = 5)) Then dias85 = dias85 + 1 End If If ((mes = 7) And (periodo = 6)) Then dias86 = dias86 + 1 End If If ((mes = 8) And (periodo = 1)) Then dias91 = dias91 + 1 End If If ((mes = 8) And (periodo = 2)) Then dias92 = dias92 + 1 End If If ((mes = 8) And (periodo = 3)) Then dias93 = dias93 + 1 End If If ((mes = 8) And (periodo = 4)) Then dias94 = dias94 + 1 End If If ((mes = 8) And (periodo = 5)) Then dias95 = dias95 + 1 End If If ((mes = 8) And (periodo = 6)) Then dias96 = dias96 + 1 End If If ((mes = 9) And (periodo = 1)) Then dias101 = dias101 + 1 End If If ((mes = 9) And (periodo = 2)) Then dias102 = dias102 + 1 End If If ((mes = 9) And (periodo = 3)) Then dias103 = dias103 + 1 End If If ((mes = 9) And (periodo = 4)) Then dias104 = dias104 + 1 End If If ((mes = 9) And (periodo = 5)) Then dias105 = dias105 + 1 End If If ((mes = 9) And (periodo = 6)) Then dias106 = dias106 + 1 End If If ((mes = 10) And (periodo = 1)) Then dias111 = dias111 + 1 End If If ((mes = 10) And (periodo = 2)) Then dias112 = dias112 + 1 End If If ((mes = 10) And (periodo = 3)) Then dias113 = dias113 + 1 End If If ((mes = 10) And (periodo = 4)) Then dias114 = dias114 + 1 End If If ((mes = 10) And (periodo = 5)) Then dias115 = dias115 + 1 End If If ((mes = 10) And (periodo = 6)) Then dias116 = dias116 + 1 End If If ((mes = 11) And (periodo = 1)) Then dias121 = dias121 + 1
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .59
End If If ((mes = 11) And (periodo = 2)) Then dias122 = dias122 + 1 End If If ((mes = 11) And (periodo = 3)) Then dias123 = dias123 + 1 End If If ((mes = 11) And (periodo = 4)) Then dias124 = dias124 + 1 End If If ((mes = 11) And (periodo = 5)) Then dias125 = dias125 + 1 End If If ((mes = 11) And (periodo = 6)) Then dias126 = dias126 + 1 End If If ((mes = 12) And (periodo = 1)) Then dias131 = dias131 + 1 End If If ((mes = 12) And (periodo = 2)) Then dias132 = dias132 + 1 End If If ((mes = 12) And (periodo = 3)) Then dias133 = dias133 + 1 End If If ((mes = 12) And (periodo = 4)) Then dias134 = dias134 + 1 End If If ((mes = 12) And (periodo = 5)) Then dias135 = dias135 + 1 End If If ((mes = 12) And (periodo = 6)) Then dias136 = dias136 + 1 End If Next fila1 Hoja2.Activate Range("K47").Select ActiveCell.FormulaR1C1 = dias11 Range("L47").Select ActiveCell.FormulaR1C1 = dias12 Range("M47").Select ActiveCell.FormulaR1C1 = dias13 Range("N47").Select ActiveCell.FormulaR1C1 = dias14 Range("O47").Select ActiveCell.FormulaR1C1 = dias15 Range("P47").Select ActiveCell.FormulaR1C1 = dias16 Range("K48").Select ActiveCell.FormulaR1C1 = dias21 Range("L48").Select ActiveCell.FormulaR1C1 = dias22 Range("M48").Select ActiveCell.FormulaR1C1 = dias23 Range("N48").Select ActiveCell.FormulaR1C1 = dias24 Range("O48").Select ActiveCell.FormulaR1C1 = dias25 Range("P48").Select ActiveCell.FormulaR1C1 = dias26 Range("K49").Select ActiveCell.FormulaR1C1 = dias31
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .60
Range("L49").Select ActiveCell.FormulaR1C1 = dias32 Range("M49").Select ActiveCell.FormulaR1C1 = dias33 Range("N49").Select ActiveCell.FormulaR1C1 = dias34 Range("O49").Select ActiveCell.FormulaR1C1 = dias35 Range("P49").Select ActiveCell.FormulaR1C1 = dias36 Range("K50").Select ActiveCell.FormulaR1C1 = dias41 Range("L50").Select ActiveCell.FormulaR1C1 = dias42 Range("M50").Select ActiveCell.FormulaR1C1 = dias43 Range("N50").Select ActiveCell.FormulaR1C1 = dias44 Range("O50").Select ActiveCell.FormulaR1C1 = dias45 Range("P50").Select ActiveCell.FormulaR1C1 = dias46 Range("K51").Select ActiveCell.FormulaR1C1 = dias51 Range("L51").Select ActiveCell.FormulaR1C1 = dias52 Range("M51").Select ActiveCell.FormulaR1C1 = dias53 Range("N51").Select ActiveCell.FormulaR1C1 = dias54 Range("O51").Select ActiveCell.FormulaR1C1 = dias55 Range("P51").Select ActiveCell.FormulaR1C1 = dias56 Range("K52").Select ActiveCell.FormulaR1C1 = dias61 Range("L52").Select ActiveCell.FormulaR1C1 = dias62 Range("M52").Select ActiveCell.FormulaR1C1 = dias63 Range("N52").Select ActiveCell.FormulaR1C1 = dias64 Range("O52").Select ActiveCell.FormulaR1C1 = dias65 Range("P52").Select ActiveCell.FormulaR1C1 = dias66 Range("K53").Select ActiveCell.FormulaR1C1 = dias71 Range("L53").Select ActiveCell.FormulaR1C1 = dias72 Range("M53").Select ActiveCell.FormulaR1C1 = dias73 Range("N53").Select ActiveCell.FormulaR1C1 = dias74 Range("O53").Select ActiveCell.FormulaR1C1 = dias75 Range("P53").Select ActiveCell.FormulaR1C1 = dias76 Range("K54").Select ActiveCell.FormulaR1C1 = dias81 Range("L54").Select ActiveCell.FormulaR1C1 = dias82 Range("M54").Select
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .61
ActiveCell.FormulaR1C1 = dias83 Range("N54").Select ActiveCell.FormulaR1C1 = dias84 Range("O54").Select ActiveCell.FormulaR1C1 = dias85 Range("P54").Select ActiveCell.FormulaR1C1 = dias86 Range("K55").Select ActiveCell.FormulaR1C1 = dias91 Range("L55").Select ActiveCell.FormulaR1C1 = dias92 Range("M55").Select ActiveCell.FormulaR1C1 = dias93 Range("N55").Select ActiveCell.FormulaR1C1 = dias94 Range("O55").Select ActiveCell.FormulaR1C1 = dias95 Range("P55").Select ActiveCell.FormulaR1C1 = dias96 Range("K56").Select ActiveCell.FormulaR1C1 = dias101 Range("L56").Select ActiveCell.FormulaR1C1 = dias102 Range("M56").Select ActiveCell.FormulaR1C1 = dias103 Range("N56").Select ActiveCell.FormulaR1C1 = dias104 Range("O56").Select ActiveCell.FormulaR1C1 = dias105 Range("P56").Select ActiveCell.FormulaR1C1 = dias106 Range("K57").Select ActiveCell.FormulaR1C1 = dias111 Range("L57").Select ActiveCell.FormulaR1C1 = dias112 Range("M57").Select ActiveCell.FormulaR1C1 = dias113 Range("N57").Select ActiveCell.FormulaR1C1 = dias114 Range("O57").Select ActiveCell.FormulaR1C1 = dias115 Range("P57").Select ActiveCell.FormulaR1C1 = dias116 Range("K58").Select ActiveCell.FormulaR1C1 = dias121 Range("L58").Select ActiveCell.FormulaR1C1 = dias122 Range("M58").Select ActiveCell.FormulaR1C1 = dias123 Range("N58").Select ActiveCell.FormulaR1C1 = dias124 Range("O58").Select ActiveCell.FormulaR1C1 = dias125 Range("P58").Select ActiveCell.FormulaR1C1 = dias126 Range("K59").Select ActiveCell.FormulaR1C1 = dias131 Range("L59").Select ActiveCell.FormulaR1C1 = dias132 Range("M59").Select ActiveCell.FormulaR1C1 = dias133 Range("N59").Select ActiveCell.FormulaR1C1 = dias134
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .62
Range("O59").Select ActiveCell.FormulaR1C1 = dias135 Range("P59").Select ActiveCell.FormulaR1C1 = dias136 End Sub Sub Pot_media_per_mes() Hoja2.Activate Dim fila As Long Dim columna As Long Dim cont As Long columna = 11 cont = 1 For cont = 1 To 6 fila = 5 For fila = 5 To 17 If (Cells(fila + 42, columna) <> 0) Then Cells(fila, columna) = (Cells(fila + 21, columna)) / (Cells(fila + 42, columna)) Else Cells(fila, columna) = 0 End If Next fila columna = columna + 1 Next cont End Sub Sub Pot_media_per_mes_norm() Hoja2.Activate Dim fila As Long Dim columna As Long Dim pcontp1 As Long Dim pcontp2 As Long Dim pcontp3 As Long Dim pcontp4 As Long Dim pcontp5 As Long Dim pcontp6 As Long fila = 5 columna = 19 pcontp1 = Hoja2.Cells(4, 33) pcontp2 = Hoja2.Cells(4, 34) pcontp3 = Hoja2.Cells(4, 35) pcontp4 = Hoja2.Cells(4, 36) pcontp5 = Hoja2.Cells(4, 37) pcontp6 = Hoja2.Cells(4, 38) For fila = 5 To 17 For columna = 19 To 24 If columna = 19 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp1) End If If columna = 20 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp2) End If If columna = 21 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp3) End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .63
If columna = 22 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp4) End If If columna = 23 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp5) End If If columna = 24 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp6) End If Next columna Next fila End Sub Private Sub CommandButton1_Click() Dim periodo1 As Long Dim periodo2 As Long Dim periodo3 As Long Dim periodo4 As Long Dim periodo5 As Long Dim periodo6 As Long periodo1 = TextBox1.Value periodo2 = TextBox2.Value periodo3 = TextBox3.Value periodo4 = TextBox4.Value periodo5 = TextBox5.Value periodo6 = TextBox6.Value Hoja2.Activate Cells(4, 33) = periodo1 Cells(4, 34) = periodo2 Cells(4, 35) = periodo3 Cells(4, 36) = periodo4 Cells(4, 37) = periodo5 Cells(4, 38) = periodo6 Unload Me End Sub Private Sub CommandButton2_Click() Unload Me End Sub Sub Copio_datos() Hoja2.Activate Dim fila As Long Dim columna As Long Dim fecha As Variant Dim hora As Long Dim periodo As Long Dim n_dias_año As Long n_dias_año = Hoja1.Cells(6, 9) fila = 2 columna = 7 For fila = 2 To ((n_dias_año * 24) + 1) fecha = Hoja1.Cells(fila, columna) hora = Hoja1.Cells(fila, columna 1) periodo = Hoja1.Cells(fila, columna + 15)
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .64
Hoja2.Cells(fila + 6, 32) = fecha Hoja2.Cells(fila + 6, 33) = hora Hoja2.Cells(fila + 6, 34) = periodo Next fila End Sub Sub Pot_cuart() Hoja2.Activate Dim fila As Long Dim fila_nueva As Long Dim columna As Long Dim columna_nueva As Long Dim potencia As Long Dim n_dias_año As Long Dim n_cuartos As Long fila = 2 fila_nueva = 8 columna = 2 columna_nueva = 35 n_dias_año = Hoja1.Cells(6, 9) n_cuartos = 0 For fila = 2 To ((n_dias_año * 24 * 4) + 1) potencia = Hoja1.Cells(fila, columna) Cells(fila_nueva, columna_nueva) = potencia n_cuartos = n_cuartos + 1 columna_nueva = columna_nueva + 1 If n_cuartos > 3 Then fila_nueva = fila_nueva + 1 n_cuartos = 0 columna_nueva = 35 End If Next fila End Sub Sub calc_excesos() Hoja2.Activate Dim fila As Long Dim columna As Long Dim potencia As Long Dim potencia_contratada As Long Dim periodo As Long Dim diferencia As Long fila = 8 columna = 35 n_dias_año = Hoja1.Cells(6, 9) For fila = 8 To ((n_dias_año * 24) + 7) contador = 0 For contador = 0 To 3 potencia = Hoja2.Cells(fila, columna + contador) periodo = Cells(fila, 34) If periodo = 1 Then potencia_contratada = Hoja2.Cells(4, 33) End If If periodo = 2 Then potencia_contratada = Hoja2.Cells(4, 34) End If If periodo = 3 Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .65
potencia_contratada = Hoja2.Cells(4, 35) End If If periodo = 4 Then potencia_contratada = Hoja2.Cells(4, 36) End If If periodo = 5 Then potencia_contratada = Hoja2.Cells(4, 37) End If If periodo = 6 Then potencia_contratada = Hoja2.Cells(4, 38) End If diferencia = potencia potencia_contratada If diferencia < 0 Then diferencia = 0 End If Hoja2.Cells(fila, columna + contador + 4) = diferencia Next contador Next fila End Sub Sub costes_excesos() Hoja2.Activate Dim fila As Long Dim columna As Long Dim fila_mes As Long Dim columna_mes As Long Dim exceso_potencia As Long Dim n_dias_año As Long Dim col As Long Dim k1 Dim k2 Dim k3 Dim k4 Dim k5 Dim k6 Dim cte Dim c11 Dim c12 Dim c13 Dim c14 Dim c15 Dim c16 Dim c21 Dim c22 Dim c23 Dim c24 Dim c25 Dim c26 Dim c31 Dim c32 Dim c33 Dim c34 Dim c35 Dim c36 Dim c41 Dim c42 Dim c43 Dim c44 Dim c45 Dim c46
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .66
Dim c51 Dim c52 Dim c53 Dim c54 Dim c55 Dim c56 Dim c61 Dim c62 Dim c63 Dim c64 Dim c65 Dim c66 Dim c71 Dim c72 Dim c73 Dim c74 Dim c75 Dim c76 Dim c81 Dim c82 Dim c83 Dim c84 Dim c85 Dim c86 Dim c91 Dim c92 Dim c93 Dim c94 Dim c95 Dim c96 Dim c101 Dim c102 Dim c103 Dim c104 Dim c105 Dim c106 Dim c111 Dim c112 Dim c113 Dim c114 Dim c115 Dim c116 Dim c121 Dim c122 Dim c123 Dim c124 Dim c125 Dim c126 k1 = 1 k2 = 0.5 k3 = 0.37 k4 = 0.37 k5 = 0.37
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .67
k6 = 0.17 n_dias_año = Hoja1.Cells(6, 9) fila = 8 fila_mes = 2 columna_mes = 18 cte = 1.4064 c11 = 0 c12 = 0 c13 = 0 c14 = 0 c15 = 0 c16 = 0 c21 = 0 c22 = 0 c23 = 0 c24 = 0 c25 = 0 c26 = 0 c31 = 0 c32 = 0 c33 = 0 c34 = 0 c35 = 0 c36 = 0 c41 = 0 c42 = 0 c43 = 0 c44 = 0 c45 = 0 c46 = 0 c51 = 0 c52 = 0 c53 = 0 c54 = 0 c55 = 0 c56 = 0 c61 = 0 c62 = 0 c63 = 0 c64 = 0 c65 = 0 c66 = 0 c71 = 0 c72 = 0 c73 = 0 c74 = 0 c75 = 0 c76 = 0 c81 = 0 c82 = 0 c83 = 0 c84 = 0 c85 = 0 c86 = 0 c91 = 0 c92 = 0 c93 = 0 c94 = 0 c95 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .68
c96 = 0 c101 = 0 c102 = 0 c103 = 0 c104 = 0 c105 = 0 c106 = 0 c111 = 0 c112 = 0 c113 = 0 c114 = 0 c115 = 0 c116 = 0 c121 = 0 c122 = 0 c123 = 0 c124 = 0 c125 = 0 c126 = 0 For fila = 8 To ((n_dias_año * 24) + 7) col = 0 For col = 0 To 3 columna = 39 + col exceso_potencia = Cells(fila, columna) periodo = Cells(fila, 34) mes = Hoja1.Cells(fila_mes, columna_mes) If ((mes = 1) And (periodo = 1) And (exceso_potencia <> 0)) Then c11 = c11 + (exceso_potencia * exceso_potencia) End If If ((mes = 1) And (periodo = 2) And (exceso_potencia <> 0)) Then c12 = c12 + (exceso_potencia * exceso_potencia) End If If ((mes = 1) And (periodo = 3) And (exceso_potencia <> 0)) Then c13 = c13 + (exceso_potencia * exceso_potencia) End If If ((mes = 1) And (periodo = 4) And (exceso_potencia <> 0)) Then c14 = c14 + (exceso_potencia * exceso_potencia) End If If ((mes = 1) And (periodo = 5) And (exceso_potencia <> 0)) Then c15 = c15 + (exceso_potencia * exceso_potencia) End If If ((mes = 1) And (periodo = 6) And (exceso_potencia <> 0)) Then c16 = c16 + (exceso_potencia * exceso_potencia) End If If ((mes = 2) And (periodo = 1) And (exceso_potencia <> 0)) Then c21 = c21 + (exceso_potencia * exceso_potencia) End If If ((mes = 2) And (periodo = 2) And (exceso_potencia <> 0)) Then c22 = c22 + (exceso_potencia * exceso_potencia) End If If ((mes = 2) And (periodo = 3) And (exceso_potencia <> 0)) Then c23 = c23 + (exceso_potencia * exceso_potencia) End If If ((mes = 2) And (periodo = 4) And (exceso_potencia <> 0)) Then c24 = c24 + (exceso_potencia * exceso_potencia) End If If ((mes = 2) And (periodo = 5) And (exceso_potencia <> 0)) Then c25 = c25 + (exceso_potencia * exceso_potencia) End If If ((mes = 2) And (periodo = 6) And (exceso_potencia <> 0)) Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .69
c26 = c26 + (exceso_potencia * exceso_potencia) End If If ((mes = 3) And (periodo = 1) And (exceso_potencia <> 0)) Then c31 = c31 + (exceso_potencia * exceso_potencia) End If If ((mes = 3) And (periodo = 2) And (exceso_potencia <> 0)) Then c32 = c32 + (exceso_potencia * exceso_potencia) End If If ((mes = 3) And (periodo = 3) And (exceso_potencia <> 0)) Then c33 = c33 + (exceso_potencia * exceso_potencia) End If If ((mes = 3) And (periodo = 4) And (exceso_potencia <> 0)) Then c34 = c34 + (exceso_potencia * exceso_potencia) End If If ((mes = 3) And (periodo = 5) And (exceso_potencia <> 0)) Then c35 = c35 + (exceso_potencia * exceso_potencia) End If If ((mes = 3) And (periodo = 6) And (exceso_potencia <> 0)) Then c36 = c36 + (exceso_potencia * exceso_potencia) End If If ((mes = 4) And (periodo = 1) And (exceso_potencia <> 0)) Then c41 = c41 + (exceso_potencia * exceso_potencia) End If If ((mes = 4) And (periodo = 2) And (exceso_potencia <> 0)) Then c42 = c42 + (exceso_potencia * exceso_potencia) End If If ((mes = 4) And (periodo = 3) And (exceso_potencia <> 0)) Then c43 = c43 + (exceso_potencia * exceso_potencia) End If If ((mes = 4) And (periodo = 4) And (exceso_potencia <> 0)) Then c44 = c44 + (exceso_potencia * exceso_potencia) End If If ((mes = 4) And (periodo = 5) And (exceso_potencia <> 0)) Then c45 = c45 + (exceso_potencia * exceso_potencia) End If If ((mes = 4) And (periodo = 6) And (exceso_potencia <> 0)) Then c46 = c46 + (exceso_potencia * exceso_potencia) End If If ((mes = 5) And (periodo = 1) And (exceso_potencia <> 0)) Then c51 = c51 + (exceso_potencia * exceso_potencia) End If If ((mes = 5) And (periodo = 2) And (exceso_potencia <> 0)) Then c52 = c52 + (exceso_potencia * exceso_potencia) End If If ((mes = 5) And (periodo = 3) And (exceso_potencia <> 0)) Then c53 = c53 + (exceso_potencia * exceso_potencia) End If If ((mes = 5) And (periodo = 4) And (exceso_potencia <> 0)) Then c54 = c54 + (exceso_potencia * exceso_potencia) End If If ((mes = 5) And (periodo = 5) And (exceso_potencia <> 0)) Then c55 = c55 + (exceso_potencia * exceso_potencia) End If If ((mes = 5) And (periodo = 6) And (exceso_potencia <> 0)) Then c56 = c56 + (exceso_potencia * exceso_potencia) End If If ((mes = 6) And (periodo = 1) And (exceso_potencia <> 0)) Then c61 = c61 + (exceso_potencia * exceso_potencia) End If If ((mes = 6) And (periodo = 2) And (exceso_potencia <> 0)) Then c62 = c62 + (exceso_potencia * exceso_potencia) End If If ((mes = 6) And (periodo = 3) And (exceso_potencia <> 0)) Then c63 = c63 + (exceso_potencia * exceso_potencia)
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .70
End If If ((mes = 6) And (periodo = 4) And (exceso_potencia <> 0)) Then c64 = c64 + (exceso_potencia * exceso_potencia) End If If ((mes = 6) And (periodo = 5) And (exceso_potencia <> 0)) Then c65 = c65 + (exceso_potencia * exceso_potencia) End If If ((mes = 6) And (periodo = 6) And (exceso_potencia <> 0)) Then c66 = c66 + (exceso_potencia * exceso_potencia) End If If ((mes = 7) And (periodo = 1) And (exceso_potencia <> 0)) Then c71 = c71 + (exceso_potencia * exceso_potencia) End If If ((mes = 7) And (periodo = 2) And (exceso_potencia <> 0)) Then c72 = c72 + (exceso_potencia * exceso_potencia) End If If ((mes = 7) And (periodo = 3) And (exceso_potencia <> 0)) Then c73 = c73 + (exceso_potencia * exceso_potencia) End If If ((mes = 7) And (periodo = 4) And (exceso_potencia <> 0)) Then c74 = c74 + (exceso_potencia * exceso_potencia) End If If ((mes = 7) And (periodo = 5) And (exceso_potencia <> 0)) Then c75 = c75 + (exceso_potencia * exceso_potencia) End If If ((mes = 7) And (periodo = 6) And (exceso_potencia <> 0)) Then c76 = c76 + (exceso_potencia * exceso_potencia) End If If ((mes = 8) And (periodo = 1) And (exceso_potencia <> 0)) Then c81 = c81 + (exceso_potencia * exceso_potencia) End If If ((mes = 8) And (periodo = 2) And (exceso_potencia <> 0)) Then c82 = c82 + (exceso_potencia * exceso_potencia) End If If ((mes = 8) And (periodo = 3) And (exceso_potencia <> 0)) Then c83 = c83 + (exceso_potencia * exceso_potencia) End If If ((mes = 8) And (periodo = 4) And (exceso_potencia <> 0)) Then c84 = c84 + (exceso_potencia * exceso_potencia) End If If ((mes = 8) And (periodo = 5) And (exceso_potencia <> 0)) Then c85 = c85 + (exceso_potencia * exceso_potencia) End If If ((mes = 8) And (periodo = 6) And (exceso_potencia <> 0)) Then c86 = c86 + (exceso_potencia * exceso_potencia) End If If ((mes = 9) And (periodo = 1) And (exceso_potencia <> 0)) Then c91 = c91 + (exceso_potencia * exceso_potencia) End If If ((mes = 9) And (periodo = 2) And (exceso_potencia <> 0)) Then c92 = c92 + (exceso_potencia * exceso_potencia) End If If ((mes = 9) And (periodo = 3) And (exceso_potencia <> 0)) Then c93 = c93 + (exceso_potencia * exceso_potencia) End If If ((mes = 9) And (periodo = 4) And (exceso_potencia <> 0)) Then c94 = c94 + (exceso_potencia * exceso_potencia) End If If ((mes = 9) And (periodo = 5) And (exceso_potencia <> 0)) Then c95 = c95 + (exceso_potencia * exceso_potencia) End If If ((mes = 9) And (periodo = 6) And (exceso_potencia <> 0)) Then c96 = c96 + (exceso_potencia * exceso_potencia) End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .71
If ((mes = 10) And (periodo = 1) And (exceso_potencia <> 0)) Then c101 = c101 + (exceso_potencia * exceso_potencia) End If If ((mes = 10) And (periodo = 2) And (exceso_potencia <> 0)) Then c102 = c102 + (exceso_potencia * exceso_potencia) End If If ((mes = 10) And (periodo = 3) And (exceso_potencia <> 0)) Then c103 = c103 + (exceso_potencia * exceso_potencia) End If If ((mes = 10) And (periodo = 4) And (exceso_potencia <> 0)) Then c104 = c104 + (exceso_potencia * exceso_potencia) End If If ((mes = 10) And (periodo = 5) And (exceso_potencia <> 0)) Then c105 = c105 + (exceso_potencia * exceso_potencia) End If If ((mes = 10) And (periodo = 6) And (exceso_potencia <> 0)) Then c106 = c106 + (exceso_potencia * exceso_potencia) End If If ((mes = 11) And (periodo = 1) And (exceso_potencia <> 0)) Then c111 = c111 + (exceso_potencia * exceso_potencia) End If If ((mes = 11) And (periodo = 2) And (exceso_potencia <> 0)) Then c112 = c112 + (exceso_potencia * exceso_potencia) End If If ((mes = 11) And (periodo = 3) And (exceso_potencia <> 0)) Then c113 = c113 + (exceso_potencia * exceso_potencia) End If If ((mes = 11) And (periodo = 4) And (exceso_potencia <> 0)) Then c114 = c114 + (exceso_potencia * exceso_potencia) End If If ((mes = 11) And (periodo = 5) And (exceso_potencia <> 0)) Then c115 = c115 + (exceso_potencia * exceso_potencia) End If If ((mes = 11) And (periodo = 6) And (exceso_potencia <> 0)) Then c116 = c116 + (exceso_potencia * exceso_potencia) End If If ((mes = 12) And (periodo = 1) And (exceso_potencia <> 0)) Then c121 = c121 + (exceso_potencia * exceso_potencia) End If If ((mes = 12) And (periodo = 2) And (exceso_potencia <> 0)) Then c122 = c122 + (exceso_potencia * exceso_potencia) End If If ((mes = 12) And (periodo = 3) And (exceso_potencia <> 0)) Then c123 = c123 + (exceso_potencia * exceso_potencia) End If If ((mes = 12) And (periodo = 4) And (exceso_potencia <> 0)) Then c124 = c124 + (exceso_potencia * exceso_potencia) End If If ((mes = 12) And (periodo = 5) And (exceso_potencia <> 0)) Then c125 = c125 + (exceso_potencia * exceso_potencia) End If If ((mes = 12) And (periodo = 6) And (exceso_potencia <> 0)) Then c126 = c126 + (exceso_potencia * exceso_potencia) End If Next col fila_mes = fila_mes + 1 Next fila c11 = Sqr(c11) * cte * k1 c12 = Sqr(c12) * cte * k2 c13 = Sqr(c13) * cte * k3 c14 = Sqr(c14) * cte * k4 c15 = Sqr(c15) * cte * k5 c16 = Sqr(c16) * cte * k6
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .72
c21 = Sqr(c21) * cte * k1 c22 = Sqr(c22) * cte * k2 c23 = Sqr(c23) * cte * k3 c24 = Sqr(c24) * cte * k4 c25 = Sqr(c25) * cte * k5 c26 = Sqr(c26) * cte * k6 c31 = Sqr(c31) * cte * k1 c32 = Sqr(c32) * cte * k2 c33 = Sqr(c33) * cte * k3 c34 = Sqr(c34) * cte * k4 c35 = Sqr(c35) * cte * k5 c36 = Sqr(c36) * cte * k6 c41 = Sqr(c41) * cte * k1 c42 = Sqr(c42) * cte * k2 c43 = Sqr(c43) * cte * k3 c44 = Sqr(c44) * cte * k4 c45 = Sqr(c45) * cte * k5 c46 = Sqr(c46) * cte * k6 c51 = Sqr(c51) * cte * k1 c52 = Sqr(c52) * cte * k2 c53 = Sqr(c53) * cte * k3 c54 = Sqr(c54) * cte * k4 c55 = Sqr(c55) * cte * k5 c56 = Sqr(c56) * cte * k6 c61 = Sqr(c61) * cte * k1 c62 = Sqr(c62) * cte * k2 c63 = Sqr(c63) * cte * k3 c64 = Sqr(c64) * cte * k4 c65 = Sqr(c65) * cte * k5 c66 = Sqr(c66) * cte * k6 c71 = Sqr(c71) * cte * k1 c72 = Sqr(c72) * cte * k2 c73 = Sqr(c73) * cte * k3 c74 = Sqr(c74) * cte * k4 c75 = Sqr(c75) * cte * k5 c76 = Sqr(c76) * cte * k6 c81 = Sqr(c81) * cte * k1 c82 = Sqr(c82) * cte * k2 c83 = Sqr(c83) * cte * k3 c84 = Sqr(c84) * cte * k4 c85 = Sqr(c85) * cte * k5 c86 = Sqr(c86) * cte * k6 c91 = Sqr(c91) * cte * k1 c92 = Sqr(c92) * cte * k2 c93 = Sqr(c93) * cte * k3 c94 = Sqr(c94) * cte * k4 c95 = Sqr(c95) * cte * k5 c96 = Sqr(c96) * cte * k6 c101 = Sqr(c101) * cte * k1 c102 = Sqr(c102) * cte * k2 c103 = Sqr(c103) * cte * k3 c104 = Sqr(c104) * cte * k4 c105 = Sqr(c105) * cte * k5 c106 = Sqr(c106) * cte * k6 c111 = Sqr(c111) * cte * k1 c112 = Sqr(c112) * cte * k2 c113 = Sqr(c113) * cte * k3 c114 = Sqr(c114) * cte * k4 c115 = Sqr(c115) * cte * k5
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .73
c116 = Sqr(c116) * cte * k6 c121 = Sqr(c121) * cte * k1 c122 = Sqr(c122) * cte * k2 c123 = Sqr(c123) * cte * k3 c124 = Sqr(c124) * cte * k4 c125 = Sqr(c125) * cte * k5 c126 = Sqr(c126) * cte * k6 Range("AS4").Select ActiveCell.FormulaR1C1 = c11 Range("AT4").Select ActiveCell.FormulaR1C1 = c12 Range("AU4").Select ActiveCell.FormulaR1C1 = c13 Range("AV4").Select ActiveCell.FormulaR1C1 = c14 Range("AW4").Select ActiveCell.FormulaR1C1 = c15 Range("AX4").Select ActiveCell.FormulaR1C1 = c16 Range("AS5").Select ActiveCell.FormulaR1C1 = c21 Range("AT5").Select ActiveCell.FormulaR1C1 = c22 Range("AU5").Select ActiveCell.FormulaR1C1 = c23 Range("AV5").Select ActiveCell.FormulaR1C1 = c24 Range("AW5").Select ActiveCell.FormulaR1C1 = c25 Range("AX5").Select ActiveCell.FormulaR1C1 = c26 Range("AS6").Select ActiveCell.FormulaR1C1 = c31 Range("AT6").Select ActiveCell.FormulaR1C1 = c32 Range("AU6").Select ActiveCell.FormulaR1C1 = c33 Range("AV6").Select ActiveCell.FormulaR1C1 = c34 Range("AW6").Select ActiveCell.FormulaR1C1 = c35 Range("AX6").Select ActiveCell.FormulaR1C1 = c36 Range("AS7").Select ActiveCell.FormulaR1C1 = c41 Range("AT7").Select ActiveCell.FormulaR1C1 = c42 Range("AU7").Select ActiveCell.FormulaR1C1 = c43 Range("AV7").Select ActiveCell.FormulaR1C1 = c44 Range("AW7").Select ActiveCell.FormulaR1C1 = c45 Range("AX7").Select ActiveCell.FormulaR1C1 = c46 Range("AS8").Select ActiveCell.FormulaR1C1 = c51 Range("AT8").Select ActiveCell.FormulaR1C1 = c52 Range("AU8").Select ActiveCell.FormulaR1C1 = c53 Range("AV8").Select
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .74
ActiveCell.FormulaR1C1 = c54 Range("AW8").Select ActiveCell.FormulaR1C1 = c55 Range("AX8").Select ActiveCell.FormulaR1C1 = c56 Range("AS9").Select ActiveCell.FormulaR1C1 = c61 Range("AT9").Select ActiveCell.FormulaR1C1 = c62 Range("AU9").Select ActiveCell.FormulaR1C1 = c63 Range("AV9").Select ActiveCell.FormulaR1C1 = c64 Range("AW9").Select ActiveCell.FormulaR1C1 = c65 Range("AX9").Select ActiveCell.FormulaR1C1 = c66 Range("AS10").Select ActiveCell.FormulaR1C1 = c71 Range("AT10").Select ActiveCell.FormulaR1C1 = c72 Range("AU10").Select ActiveCell.FormulaR1C1 = c73 Range("AV10").Select ActiveCell.FormulaR1C1 = c74 Range("AW10").Select ActiveCell.FormulaR1C1 = c75 Range("AX10").Select ActiveCell.FormulaR1C1 = c76 Range("AS11").Select ActiveCell.FormulaR1C1 = c81 Range("AT11").Select ActiveCell.FormulaR1C1 = c82 Range("AU11").Select ActiveCell.FormulaR1C1 = c83 Range("AV11").Select ActiveCell.FormulaR1C1 = c84 Range("AW11").Select ActiveCell.FormulaR1C1 = c85 Range("AX11").Select ActiveCell.FormulaR1C1 = c86 Range("AS12").Select ActiveCell.FormulaR1C1 = c91 Range("AT12").Select ActiveCell.FormulaR1C1 = c92 Range("AU12").Select ActiveCell.FormulaR1C1 = c93 Range("AV12").Select ActiveCell.FormulaR1C1 = c94 Range("AW12").Select ActiveCell.FormulaR1C1 = c95 Range("AX12").Select ActiveCell.FormulaR1C1 = c96 Range("AS13").Select ActiveCell.FormulaR1C1 = c101 Range("AT13").Select ActiveCell.FormulaR1C1 = c102 Range("AU13").Select ActiveCell.FormulaR1C1 = c103 Range("AV13").Select ActiveCell.FormulaR1C1 = c104 Range("AW13").Select ActiveCell.FormulaR1C1 = c105
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .75
Range("AX13").Select ActiveCell.FormulaR1C1 = c106 Range("AS14").Select ActiveCell.FormulaR1C1 = c111 Range("AT14").Select ActiveCell.FormulaR1C1 = c112 Range("AU14").Select ActiveCell.FormulaR1C1 = c113 Range("AV14").Select ActiveCell.FormulaR1C1 = c114 Range("AW14").Select ActiveCell.FormulaR1C1 = c115 Range("AX14").Select ActiveCell.FormulaR1C1 = c116 Range("AS15").Select ActiveCell.FormulaR1C1 = c121 Range("AT15").Select ActiveCell.FormulaR1C1 = c122 Range("AU15").Select ActiveCell.FormulaR1C1 = c123 Range("AV15").Select ActiveCell.FormulaR1C1 = c124 Range("AW15").Select ActiveCell.FormulaR1C1 = c125 Range("AX15").Select ActiveCell.FormulaR1C1 = c126 End Sub Sub excesos_maximos() Dim fila As Long Dim columna As Long Dim col As Long Dim exceso As Long Dim maximo As Long Dim n_dias_año As Long n_dias_año = Hoja1.Cells(6, 9) fila = 8 For fila = 8 To ((n_dias_año * 24) + 7) col = 0 maximo = 0 exceso = 0 For col = 0 To 3 columna = 39 + col exceso = Cells(fila, columna) If (exceso > maximo) Then maximo = exceso End If Next col Cells(fila, 43) = maximo Next fila End Sub Sub Pot_media_per_mes_norm() Hoja2.Activate Dim fila As Long Dim columna As Long Dim pcontp1 As Long Dim pcontp2 As Long
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .76
Dim pcontp3 As Long Dim pcontp4 As Long Dim pcontp5 As Long Dim pcontp6 As Long fila = 5 columna = 19 pcontp1 = Hoja2.Cells(4, 33) pcontp2 = Hoja2.Cells(4, 34) pcontp3 = Hoja2.Cells(4, 35) pcontp4 = Hoja2.Cells(4, 36) pcontp5 = Hoja2.Cells(4, 37) pcontp6 = Hoja2.Cells(4, 38) For fila = 5 To 17 For columna = 19 To 24 If columna = 19 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp1) End If If columna = 20 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp2) End If If columna = 21 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp3) End If If columna = 22 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp4) End If If columna = 23 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp5) End If If columna = 24 Then Cells(fila, columna) = (Cells(fila, columna 8) / pcontp6) End If Next columna Next fila End Sub Private Sub CommandButton1_Click() Dim tarifa As Long If OptionButton1.Value = True Then tarifa = 1 End If If OptionButton2.Value = True Then tarifa = 2 End If If OptionButton3.Value = True Then tarifa = 3 End If If OptionButton4.Value = True Then tarifa = 4 End If Hoja2.Cells(18, 45) = tarifa Unload Me End Sub Private Sub OptionButton1_Click() CommandButton1.Enabled = True End Sub
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .77
Private Sub OptionButton2_Click() CommandButton1.Enabled = True End Sub Private Sub OptionButton3_Click() CommandButton1.Enabled = True End Sub Private Sub OptionButton4_Click() CommandButton1.Enabled = True End Sub Private Sub OptionButton5_Click() CommandButton1.Enabled = True End Sub Sub Accesos() Dim tarifa As Long Dim fila_tarifap As Long Dim fila_tarifae As Long Dim FP Dim i As Long 'Costes de potencia y energía en funcion de la tarifa Dim p1 Dim p2 Dim p3 Dim p4 Dim p5 Dim p6 Dim e1 Dim e2 Dim e3 Dim e4 Dim e5 Dim e6 Dim pcontp1 Dim pcontp2 Dim pcontp3 Dim pcontp4 Dim pcontp5 Dim pcontp6 '"Leemos" la energia consumida por periodo y por mes => mes, año. Dim energia11 Dim energia12 Dim energia13 Dim energia14 Dim energia15 Dim energia16 Dim energia21 Dim energia22 Dim energia23 Dim energia24 Dim energia25 Dim energia26 Dim energia31 Dim energia32 Dim energia33 Dim energia34 Dim energia35 Dim energia36
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .78
Dim energia41 Dim energia42 Dim energia43 Dim energia44 Dim energia45 Dim energia46 Dim energia51 Dim energia52 Dim energia53 Dim energia54 Dim energia55 Dim energia56 Dim energia61 Dim energia62 Dim energia63 Dim energia64 Dim energia65 Dim energia66 Dim energia71 Dim energia72 Dim energia73 Dim energia74 Dim energia75 Dim energia76 Dim energia81 Dim energia82 Dim energia83 Dim energia84 Dim energia85 Dim energia86 Dim energia91 Dim energia92 Dim energia93 Dim energia94 Dim energia95 Dim energia96 Dim energia101 Dim energia102 Dim energia103 Dim energia104 Dim energia105 Dim energia106 Dim energia111 Dim energia112 Dim energia113 Dim energia114 Dim energia115 Dim energia116 Dim energia121 Dim energia122 Dim energia123 Dim energia124 Dim energia125 Dim energia126 'Coste de mi energía Dim coste1 Dim coste2 Dim coste3 Dim coste4
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .79
Dim coste5 Dim coste6 Dim coste7 Dim coste8 Dim coste9 Dim coste10 Dim coste11 Dim coste12 tarifa = Hoja2.Cells(18, 45) fila_tarifap = 3 + tarifa fila_tarifae = 13 + tarifa p1 = Hoja1.Cells(fila_tarifap, 35) p2 = Hoja1.Cells(fila_tarifap, 36) p3 = Hoja1.Cells(fila_tarifap, 37) p4 = Hoja1.Cells(fila_tarifap, 38) p5 = Hoja1.Cells(fila_tarifap, 39) p6 = Hoja1.Cells(fila_tarifap, 40) e1 = Hoja1.Cells(fila_tarifae, 35) e2 = Hoja1.Cells(fila_tarifae, 36) e3 = Hoja1.Cells(fila_tarifae, 37) e4 = Hoja1.Cells(fila_tarifae, 38) e5 = Hoja1.Cells(fila_tarifae, 39) e6 = Hoja1.Cells(fila_tarifae, 40) pcontp1 = Hoja2.Cells(4, 33) pcontp2 = Hoja2.Cells(4, 34) pcontp3 = Hoja2.Cells(4, 35) pcontp4 = Hoja2.Cells(4, 36) pcontp5 = Hoja2.Cells(4, 37) pcontp6 = Hoja2.Cells(4, 38) FP = p1 * pcontp1 + p2 * pcontp2 + p3 * pcontp3 + p4 * pcontp4 + p5 * pcontp5 + p6 * pcontp6 For i = 0 To 11 Hoja2.Cells(i + 24, 45) = FP / 12 Next i 'Ahora copio los valores de los excesos. For i = 4 To 15 Hoja2.Cells(i + 20, 46) = Hoja2.Cells(i, 51) Next i energia11 = Hoja2.Cells(26, 11) energia12 = Hoja2.Cells(26, 12) energia13 = Hoja2.Cells(26, 13) energia14 = Hoja2.Cells(26, 14) energia15 = Hoja2.Cells(26, 15) energia16 = Hoja2.Cells(26, 16) energia21 = Hoja2.Cells(27, 11) energia22 = Hoja2.Cells(27, 12) energia23 = Hoja2.Cells(27, 13) energia24 = Hoja2.Cells(27, 14) energia25 = Hoja2.Cells(27, 15) energia26 = Hoja2.Cells(27, 16) energia31 = Hoja2.Cells(28, 11) energia32 = Hoja2.Cells(28, 12) energia33 = Hoja2.Cells(28, 13) energia34 = Hoja2.Cells(28, 14) energia35 = Hoja2.Cells(28, 15) energia36 = Hoja2.Cells(28, 16)
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .80
energia41 = Hoja2.Cells(29, 11) energia42 = Hoja2.Cells(29, 12) energia43 = Hoja2.Cells(29, 13) energia44 = Hoja2.Cells(29, 14) energia45 = Hoja2.Cells(29, 15) energia46 = Hoja2.Cells(29, 16) energia51 = Hoja2.Cells(30, 11) energia52 = Hoja2.Cells(30, 12) energia53 = Hoja2.Cells(30, 13) energia54 = Hoja2.Cells(30, 14) energia55 = Hoja2.Cells(30, 15) energia56 = Hoja2.Cells(30, 16) energia61 = Hoja2.Cells(31, 11) + Hoja2.Cells(32, 11) energia62 = Hoja2.Cells(31, 12) + Hoja2.Cells(32, 12) energia63 = Hoja2.Cells(31, 13) + Hoja2.Cells(32, 13) energia64 = Hoja2.Cells(31, 14) + Hoja2.Cells(32, 14) energia65 = Hoja2.Cells(31, 15) + Hoja2.Cells(32, 15) energia66 = Hoja2.Cells(31, 16) + Hoja2.Cells(32, 16) energia71 = Hoja2.Cells(33, 11) energia72 = Hoja2.Cells(33, 12) energia73 = Hoja2.Cells(33, 13) energia74 = Hoja2.Cells(33, 14) energia75 = Hoja2.Cells(33, 15) energia76 = Hoja2.Cells(33, 16) energia81 = Hoja2.Cells(34, 11) energia82 = Hoja2.Cells(34, 12) energia83 = Hoja2.Cells(34, 13) energia84 = Hoja2.Cells(34, 14) energia85 = Hoja2.Cells(34, 15) energia86 = Hoja2.Cells(34, 16) energia91 = Hoja2.Cells(35, 11) energia92 = Hoja2.Cells(35, 12) energia93 = Hoja2.Cells(35, 13) energia94 = Hoja2.Cells(35, 14) energia95 = Hoja2.Cells(35, 15) energia96 = Hoja2.Cells(35, 16) energia101 = Hoja2.Cells(36, 11) energia102 = Hoja2.Cells(36, 12) energia103 = Hoja2.Cells(36, 13) energia104 = Hoja2.Cells(36, 14) energia105 = Hoja2.Cells(36, 15) energia106 = Hoja2.Cells(36, 16) energia111 = Hoja2.Cells(37, 11) energia112 = Hoja2.Cells(37, 12) energia113 = Hoja2.Cells(37, 13) energia114 = Hoja2.Cells(37, 14) energia115 = Hoja2.Cells(37, 15) energia116 = Hoja2.Cells(37, 16) energia121 = Hoja2.Cells(38, 11) energia122 = Hoja2.Cells(38, 12) energia123 = Hoja2.Cells(38, 13) energia124 = Hoja2.Cells(38, 14) energia125 = Hoja2.Cells(38, 15) energia126 = Hoja2.Cells(38, 16) 'Obtenemos los € de la energía consumida en cada mes coste1 = e1 * energia11 + e2 * energia12 + e3 * energia13 + e4 * energia14 + e5 * energia15 + e6 * energia16 coste2 = e1 * energia21 + e2 * energia22 + e3 * energia23 + e4 * energia24 + e5 * energia25 + e6 * energia26
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .81
coste3 = e1 * energia31 + e2 * energia32 + e3 * energia33 + e4 * energia34 + e5 * energia35 + e6 * energia36 coste4 = e1 * energia41 + e2 * energia42 + e3 * energia43 + e4 * energia44 + e5 * energia45 + e6 * energia46 coste5 = e1 * energia51 + e2 * energia52 + e3 * energia53 + e4 * energia54 + e5 * energia55 + e6 * energia56 coste6 = e1 * energia61 + e2 * energia62 + e3 * energia63 + e4 * energia64 + e5 * energia65 + e6 * energia66 coste7 = e1 * energia71 + e2 * energia72 + e3 * energia73 + e4 * energia74 + e5 * energia75 + e6 * energia76 coste8 = e1 * energia81 + e2 * energia82 + e3 * energia83 + e4 * energia84 + e5 * energia85 + e6 * energia86 coste9 = e1 * energia91 + e2 * energia92 + e3 * energia93 + e4 * energia94 + e5 * energia95 + e6 * energia96 coste10 = e1 * energia101 + e2 * energia102 + e3 * energia103 + e4 * energia104 + e5 * energia105 + e6 * energia106 coste11 = e1 * energia111 + e2 * energia112 + e3 * energia113 + e4 * energia114 + e5 * energia115 + e6 * energia116 coste12 = e1 * energia121 + e2 * energia122 + e3 * energia123 + e4 * energia124 + e5 * energia125 + e6 * energia126 Hoja2.Cells(24, 47) = coste1 Hoja2.Cells(25, 47) = coste2 Hoja2.Cells(26, 47) = coste3 Hoja2.Cells(27, 47) = coste4 Hoja2.Cells(28, 47) = coste5 Hoja2.Cells(29, 47) = coste6 Hoja2.Cells(30, 47) = coste7 Hoja2.Cells(31, 47) = coste8 Hoja2.Cells(32, 47) = coste9 Hoja2.Cells(33, 47) = coste10 Hoja2.Cells(34, 47) = coste11 Hoja2.Cells(35, 47) = coste12 End Sub Sub Energiab_central() Dim i As Long Dim fila As Long Dim columna As Long Dim tarifa As Long Dim perdp fila = 26 columna = 11 tarifa = Hoja2.Cells(18, 45) i = 0 For columna = 11 To 16 perdp = Hoja1.Cells(23 + tarifa, i + 35) For fila = 26 To 38 Hoja2.Activate Cells(fila + 42, columna) = Cells(fila, columna) / (1 perdp) Next fila i = i + 1 Next columna End Sub Sub Garantia_potencia() Dim costp1 Dim costp2 Dim costp3 Dim costp4 Dim costp5 Dim costp6 Dim gpenero Dim gpfebrero Dim gpmarzo
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .82
Dim gpabril Dim gpmayo Dim gpjunio Dim gpjulio Dim gpagosto Dim gpseptiembre Dim gpoctubre Dim gpnoviembre Dim gpdiciembre gpenero = 0 gpfebrero = 0 gpmarzo = 0 gpabril = 0 gpmayo = 0 gpjunio = 0 gpjulio = 0 gpagosto = 0 gpseptiembre = 0 gpoctubre = 0 gpnoviembre = 0 gpdiciembre = 0 costp1 = Hoja1.Cells(33, 35) costp2 = Hoja1.Cells(33, 36) costp3 = Hoja1.Cells(33, 37) costp4 = Hoja1.Cells(33, 38) costp5 = Hoja1.Cells(33, 39) costp6 = Hoja1.Cells(33, 40) gpenero = Hoja2.Cells(68, 11) * costp1 + Hoja2.Cells(68, 12) * costp2 + Hoja2.Cells(68, 13) * costp3 + Hoja2.Cells(68, 14)
* costp4 + Hoja2.Cells(68, 15) * costp5 + Hoja2.Cells(68, 16) * costp6 gpfebrero = Hoja2.Cells(69, 11) * costp1 + Hoja2.Cells(69, 12) * costp2 + Hoja2.Cells(69, 13) * costp3 + Hoja2.Cells(69,
14) * costp4 + Hoja2.Cells(69, 15) * costp5 + Hoja2.Cells(69, 16) * costp6 gpmarzo = Hoja2.Cells(70, 11) * costp1 + Hoja2.Cells(70, 12) * costp2 + Hoja2.Cells(70, 13) * costp3 + Hoja2.Cells(70,
14) * costp4 + Hoja2.Cells(70, 15) * costp5 + Hoja2.Cells(70, 16) * costp6 gpabril = Hoja2.Cells(71, 11) * costp1 + Hoja2.Cells(71, 12) * costp2 + Hoja2.Cells(71, 13) * costp3 + Hoja2.Cells(71, 14) *
costp4 + Hoja2.Cells(71, 15) * costp5 + Hoja2.Cells(71, 16) * costp6 gpmayo = Hoja2.Cells(72, 11) * costp1 + Hoja2.Cells(72, 12) * costp2 + Hoja2.Cells(72, 13) * costp3 + Hoja2.Cells(72, 14)
* costp4 + Hoja2.Cells(72, 15) * costp5 + Hoja2.Cells(72, 16) * costp6 gpjunio = Hoja2.Cells(73, 11) * costp1 + Hoja2.Cells(73, 12) * costp2 + Hoja2.Cells(73, 13) * costp3 + Hoja2.Cells(73, 14)
* costp4 + Hoja2.Cells(73, 15) * costp5 + Hoja2.Cells(73, 16) * costp6 + Hoja2.Cells(74, 11) * costp1 + Hoja2.Cells(74, 12) * costp2 + Hoja2.Cells(74, 13) * costp3 + Hoja2.Cells(74, 14) * costp4 + Hoja2.Cells(74, 15) * costp5 + Hoja2.Cells(74, 16) * costp6 gpjulio = Hoja2.Cells(75, 11) * costp1 + Hoja2.Cells(75, 12) * costp2 + Hoja2.Cells(75, 13) * costp3 + Hoja2.Cells(75, 14) *
costp4 + Hoja2.Cells(75, 15) * costp5 + Hoja2.Cells(75, 16) * costp6 gpagosto = Hoja2.Cells(76, 11) * costp1 + Hoja2.Cells(76, 12) * costp2 + Hoja2.Cells(76, 13) * costp3 + Hoja2.Cells(76,
14) * costp4 + Hoja2.Cells(76, 15) * costp5 + Hoja2.Cells(76, 16) * costp6 gpseptiembre = Hoja2.Cells(77, 11) * costp1 + Hoja2.Cells(77, 12) * costp2 + Hoja2.Cells(77, 13) * costp3 +
Hoja2.Cells(77, 14) * costp4 + Hoja2.Cells(77, 15) * costp5 + Hoja2.Cells(77, 16) * costp6 gpnoviembre = Hoja2.Cells(78, 11) * costp1 + Hoja2.Cells(78, 12) * costp2 + Hoja2.Cells(78, 13) * costp3 +
Hoja2.Cells(78, 14) * costp4 + Hoja2.Cells(78, 15) * costp5 + Hoja2.Cells(78, 16) * costp6 gpdiciembre = Hoja2.Cells(79, 11) * costp1 + Hoja2.Cells(79, 12) * costp2 + Hoja2.Cells(79, 13) * costp3 +
Hoja2.Cells(79, 14) * costp4 + Hoja2.Cells(79, 15) * costp5 + Hoja2.Cells(79, 16) * costp6 Hoja2.Cells(24, 51) = gpenero Hoja2.Cells(25, 51) = gpfebrero Hoja2.Cells(26, 51) = gpmarzo Hoja2.Cells(27, 51) = gpabril Hoja2.Cells(28, 51) = gpmayo Hoja2.Cells(29, 51) = gpjunio Hoja2.Cells(30, 51) = gpjulio Hoja2.Cells(31, 51) = gpagosto Hoja2.Cells(32, 51) = gpseptiembre Hoja2.Cells(33, 51) = gpoctubre Hoja2.Cells(34, 51) = gpnoviembre Hoja2.Cells(35, 51) = gpdiciembre
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .83
End Sub Private Sub CommandButton1_Click() Dim pmenergia1 Dim pmenergia2 Dim pmenergia3 Dim pmenergia4 pmenergia1 = TextBox1.Value pmenergia2 = TextBox2.Value pmenergia3 = TextBox3.Value pmenergia4 = TextBox4.Value Hoja2.Activate Cells(5, 55) = pmenergia1 Cells(5, 56) = pmenergia2 Cells(5, 57) = pmenergia3 Cells(5, 58) = pmenergia4 Unload Me End Sub Private Sub CommandButton2_Click() Unload Me End Sub Sub FE_interumpibilidad() Dim fila As Long Dim columna As Long 'Término correspondiente a FE en cada uno de los cuatrimestres. Dim fe1 Dim fe2 Dim fe3 Dim fe4 Dim fetot Dim alfa1 Dim alfa2 Dim alfa3 Dim alfa4 Dim alfa5 Dim alfa6 alfa1 = Hoja1.Cells(48, 35) alfa2 = Hoja1.Cells(48, 36) alfa3 = Hoja1.Cells(48, 37) alfa4 = Hoja1.Cells(48, 38) alfa5 = Hoja1.Cells(48, 39) alfa6 = Hoja1.Cells(48, 40) Hoja2.Cells(9, 60) = alfa1 Hoja2.Cells(10, 60) = alfa2 Hoja2.Cells(11, 60) = alfa3 Hoja2.Cells(12, 60) = alfa4 Hoja2.Cells(13, 60) = alfa5 Hoja2.Cells(14, 60) = alfa6 fe1 = 0 fe2 = 0 fe3 = 0 fe4 = 0 For fila = 9 To 14
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .84
fe1 = fe1 + (Hoja2.Cells(fila, 56)) * (Hoja2.Cells(fila, 60)) Next fila fe1 = fe1 * (Hoja2.Cells(5, 55)) Hoja2.Cells(18, 56) = fe1 For fila = 9 To 14 fe2 = fe2 + (Hoja2.Cells(fila, 57)) * (Hoja2.Cells(fila, 60)) Next fila fe2 = fe2 * (Hoja2.Cells(5, 56)) Hoja2.Cells(18, 57) = fe2 For fila = 9 To 14 fe3 = fe3 + (Hoja2.Cells(fila, 58)) * (Hoja2.Cells(fila, 60)) Next fila fe3 = fe3 * (Hoja2.Cells(5, 57)) Hoja2.Cells(18, 58) = fe3 For fila = 9 To 14 fe4 = fe4 + (Hoja2.Cells(fila, 59)) * (Hoja2.Cells(fila, 60)) Next fila fe4 = fe4 * (Hoja2.Cells(5, 58)) Hoja2.Cells(18, 59) = fe4 fetot = fe1 + fe2 + fe3 + fe4 Hoja2.Cells(20, 56) = fetot End Sub Private Sub OptionButton3_Click() Frame4.Visible = True Label2.Visible = True Label4.Visible = True Label3.Visible = True Label5.Visible = True Label6.Visible = True TextBox2.Visible = True TextBox3.Visible = True TextBox4.Visible = True TextBox5.Visible = True TextBox6.Visible = True CommandButton1.Visible = True End Sub Private Sub OptionButton9_Click() Frame4.Visible = True Label2.Visible = False Label4.Visible = False Label3.Visible = True Label5.Visible = True Label6.Visible = True TextBox2.Visible = False TextBox3.Visible = False TextBox4.Visible = True TextBox5.Visible = True TextBox6.Visible = True CommandButton1.Visible = True End Sub Sub DI_interumpibilidad()
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .85
Dim H Dim S Dim Pm1 Dim Pmax1 Dim Pmax2 Dim Pmax3 Dim Pmax4 Dim Pmax5 Dim DI Dim dif1 Dim dif2 Dim dif3 Dim dif4 Dim dif5 Dim signo H = Hoja2.Cells(32, 57) S = Hoja2.Cells(25, 57) Pm1 = Hoja2.Cells(26, 57) Pmax1 = Hoja2.Cells(27, 57) Pmax2 = Hoja2.Cells(28, 57) Pmax3 = Hoja2.Cells(29, 57) Pmax4 = Hoja2.Cells(30, 57) Pmax5 = Hoja2.Cells(31, 57) signo = Hoja2.Cells(27, 57) If (signo = "") Then dif1 = 0 dif2 = 0 dif3 = Pm1 Pmax3 If dif3 < 0 Then dif3 = 0 End If dif4 = Pm1 Pmax4 If dif4 < 0 Then dif4 = 0 End If dif5 = Pm1 Pmax5 If dif5 < 0 Then dif5 = 0 End If If H > 14000 Then H = 14000 End If DI = (0.78 * (H 2100) / H) * ((S * (25 * dif1 + 25 * dif2 + 14 * dif3 + 16 * dif4 + 20 * dif5)) / Pm1) End If If (signo <> "") Then dif1 = Pm1 Pmax1 If dif1 < 0 Then dif1 = 0 End If dif2 = Pm1 Pmax2 If dif2 < 0 Then dif2 = 0 End If dif3 = Pm1 Pmax3 If dif3 < 0 Then dif3 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .86
End If dif4 = Pm1 Pmax4 If dif4 < 0 Then dif4 = 0 End If dif5 = Pm1 Pmax5 If dif5 < 0 Then dif5 = 0 End If If H > 14000 Then H = 14000 End If DI = (0.78 * (H 2100) / H) * ((S * (25 * dif1 + 25 * dif2 + 14 * dif3 + 16 * dif4 + 20 * dif5)) / Pm1) End If If H < 2100 Then DI = 0 End If Hoja2.Cells(36, 56) = DI End Sub
5.2 Energía
En el capítulo anterior, se explicó cómo está desarrollada esta herramienta.
El objetvio que se busca con ella es que, en lugar de tener tan poco
discriminados los precios, se puedan tipificar la curva forward de precios con
un mayor número de “intervalos”.
El código presenta la particularidad de que genera tantos lugares donde
introducir los datos como años se haya indicado que tienen nuestros datos. Una
vez introducidos los datos de los años, se opera normalmente con ellos. Es
decir, se generan dinámicamente durante la ejecución las “casillas” necesarias.
Se incluyen capturas del pantalla de la herremienta y su código.
Pantalla en la que se introducen los datos
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .88
Resultados
Código Private Sub CommandButton1_Click() Hoja1.Cells(5, 2) = TextBox2.Value 'Usaré este valor en la macro "Fecha" para sacar las columnas de fechas de cada uno de los años 'Esa macro me gustaría hacerla antes de pedir que me introduzca los datos. Hoja1.Cells(4, 2) = TextBox1.Value If (OptionButton1.Value = True) Then Hoja1.Cells(6, 2) = 0 End If If (OptionButton2.Value = True) Then Hoja1.Cells(6, 2) = 1 End If Unload Me End Sub Private Sub CommandButton2_Click() Hoja1.Cells(1, 16) = 1 Unload Me End Sub
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .89
Private Sub TextBox1_Change() If TextBox1.Text <> " " Then CommandButton1.Locked = False End If End Sub Sub Abrir() 'Con esto lo que estoy preparando es mi hoja de datos para que sean introducidos, 'preparando tantas columnas como años se me haya dicho que tengo. Dim respuesta, micadena 'Defino ambas variables, que usaré para "responder" a mis preguntas, a las que se me formulan en las ventanas que se abren y preguntan. Dim Formulario As UserForm1 Dim n_años Dim i Dim fila, columna respuesta = MsgBox("¿Ha introducido ya TODOS los datos?", vbYesNo, "Atención") If (respuesta = vbYes) Then micadena = "si" Else micadena = "no" End If If (micadena = "si") Then 'Si sí se han introducido todos los datos, seguiré ejecutando... If (Hoja1.Cells(6, 2) = 1) Then Módulo1.Mover_horas Hoja3.Activate Módulo5.Años_datos_2 Módulo6.Copio_datos Módulo7.Dat_fecha Módulo7.Det_tipo_dia Módulo8.Horas Módulo7.Det_periodo_2008 Hoja2.Activate Módulo9.Result_copio Módulo9.Tabla_p15 Módulo9.Tabla_p6 Módulo9.prec_agosto Módulo9.prec_medio Módulo10.Precio_unidad End If End If If (micadena = "no") Then 'Si no se han introducido todos los datos, los introduzco para luego ejecutar el programa. Set Formulario1 = New UserForm1 Formulario1.Show If Hoja1.Cells(4, 2) <> 0 Then n_años = Hoja1.Cells(4, 2) Hoja1.Range("BI1:BJ2").Copy For i = 0 To (n_años 1) Hoja1.Range("A8:B9").PasteSpecial If i <> 0 Then Hoja1.Range(Cells(8, 1 + 3 * i), Cells(9, 2 + 3 * i)).PasteSpecial 'Fundamental End If Next i End If Módulo3.Fechas respuesta = MsgBox("¿Ha introducido ya el precio por hora?", vbYesNo, "Atención") If (respuesta = vbYes) Then micadena = "si" Else micadena = "no" End If If (micadena = "si") Then If (Hoja1.Cells(6, 2) = 1) Then Módulo1.Mover_horas
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .90
Hoja3.Activate Módulo5.Años_datos_2 Módulo6.Copio_datos Módulo7.Dat_fecha Módulo7.Det_tipo_dia Módulo8.Horas Módulo7.Det_periodo_2008 Hoja2.Activate Módulo9.Result_copio Módulo9.Tabla_p15 Módulo9.Tabla_p6 Módulo9.prec_agosto Módulo9.prec_medio Módulo10.Precio_unidad End If End If If (micadena = "no") Then respuesta = MsgBox("Introdúzcalos", vbInformation, "Información") End If End If End Sub Sub Mover_horas() Dim fila As Integer Dim columna As Integer fila = 10 columna = 1 For n = 0 To 364 Range(Hoja1.Cells(fila, columna), Hoja1.Cells(fila, columna)).Select Selection.EntireRow.Insert Rows(fila + 24).Select Selection.Cut Rows(fila).Select ActiveSheet.Paste Rows(fila + 24).Select Selection.Delete Shift:=xlUp fila = fila + 24 Next n Range("A10").Select End Sub Sub Años_datos_2() Dim n_años As Integer Dim i As Integer Dim año_inicial As Integer Dim año_inicial_copia As Integer i = 0 n_años = Hoja1.Cells(4, 2) año_inicial = Hoja1.Cells(5, 2) año_inicial_copia = año_inicial Hoja3.Range("CA1:CG2").Copy For i = 0 To (n_años 1) Hoja3.Range("A1:G2").PasteSpecial If i <> 0 Then Hoja3.Range(Hoja3.Cells(1, 1 + 8 * i), Hoja3.Cells(2, 7 + 8 * i)).PasteSpecial End If Next i
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .91
For i = 0 To (n_años 1) Hoja3.Cells(1, 2 + 8 * i) = año_inicial_copia año_inicial_copia = año_inicial_copia + 1 Next i End Sub Sub Copio_datos() Dim i As Integer Dim n_años As Integer n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) 'Hoja1.Range("A10: B8769").Copy Hoja1.Range(Hoja1.Cells(10, 1 + 3 * i), Hoja1.Cells(8769, 2 + 3 * i)).Copy Hoja3.Range(Hoja3.Cells(3, 1 + 8 * i), Hoja3.Cells(8762, 2 + 8 * i)).PasteSpecial Next i End Sub Sub Dat_fecha() Dim fila As Long Dim mes As Long Dim dia_semana As Long Dim dia_mes As Long n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) For fila = 3 To 8762 mes = Month(Hoja3.Cells(fila, 1 + 8 * i)) dia_semana = WeekDay((Hoja3.Cells(fila, 1 + 8 * i)), vbMonday) dia_mes = Day(Hoja3.Cells(fila, 1 + 8 * i)) Cells(fila, 3 + 8 * i) = mes Cells(fila, 4 + 8 * i) = dia_semana Cells(fila, 5 + 8 * i) = dia_mes Next fila Next i End Sub Sub Det_tipo_dia() Dim fila As Long Dim columna As Long Dim dia_sem As Long Dim c_d_semana As Long Dim fila_tarifa1 As Long Dim fila_tarifa2 As Long Dim mes As Long Dim dia_mes As Long Dim fila_tabla As Long Dim columna_tabla As Long Dim tarifa Dim i As Integer Dim n_años As Integer fila = 3 fila_tabla = 30 n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) columna = 4 + 8 * i For fila = 3 To 8762
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .92
dia_semana = Cells(fila, columna) c_d_semana = dia_semana + 87 'Paso a la columna de la tabla de las tarifas mes = Cells(fila, columna 1) dia_mes = Cells(fila, columna + 1) fila_tarifa1 = fila_tabla + mes fila_tarifa2 = fila_tabla + mes + 1 If ((mes = 1) Or (mes = 2) Or (mes = 3) Or (mes = 4) Or (mes = 5)) Then tarifa = Cells(fila_tarifa1, c_d_semana) End If If ((mes = 6) And (dia_mes <= 15)) Then tarifa = Cells(fila_tarifa1, c_d_semana) End If If (((mes = 6) And (dia_mes > 15)) Or (mes = 7) Or (mes = 8) Or (mes = 9) Or (mes = 10) Or (mes = 11) Or (mes = 12)) Then tarifa = Cells(fila_tarifa2, c_d_semana) End If If (((dia_mes = 1) And (mes = 1)) Or ((dia_mes = 1) And (mes = 5)) Or ((dia_mes = 1) And (mes = 11)) Or ((dia_mes = 6) And (mes = 12)) Or ((dia_mes = 8) And (mes = 12)) Or ((dia_mes = 25) And (mes = 12))) Then tarifa = "D" End If Cells(fila, columna + 2).Select ActiveCell.FormulaR1C1 = tarifa Next fila Next i End Sub Sub Horas() 'Necesitamos conocer las horas para sacar los periodos... Dim fila As Integer Dim columna As Integer Dim hora As Integer columna = 78 For fila = 3 To 8762 For hora = 0 To 23 Hoja3.Cells(fila, columna) = hora fila = fila + 1 Next hora fila = fila 1 'Esto lo hacemos para que no nos cuente una vez más. Next fila End Sub Sub Det_periodo_2008() Dim fila As Long Dim fila_tarifa As Long Dim columna As Long Dim colum_tarifa As Long Dim tarifa As String Dim tarifa_num As Long Dim periodo As Long Dim hora As Long Dim f As Long Dim cL As Long Dim n_años As Integer Dim i As Integer fila = 3 fila_tarifa = 3 colum_tarifa = 87
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .93
n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) columna = 6 + 8 * i For fila = 3 To 8762 tarifa = Hoja3.Cells(fila, columna) hora = Hoja3.Cells(fila, 78) If (tarifa = "A") Then tarifa_num = 1 End If If (tarifa = "A1") Then tarifa_num = 2 End If If (tarifa = "B") Then tarifa_num = 3 End If If (tarifa = "B1") Then tarifa_num = 4 End If If (tarifa = "C") Then tarifa_num = 5 End If If (tarifa = "D") Then tarifa_num = 6 End If f = fila_tarifa + hora cL = colum_tarifa + tarifa_num periodo = Cells(f, cL) Cells(fila, columna + 1).Select ActiveCell.FormulaR1C1 = periodo Next fila Next i End Sub Sub Result_copio() Dim n_años As Integer Dim i As Integer Dim año_inicial As Integer Dim año_inicial_copia As Integer i = 0 n_años = Hoja1.Cells(4, 2) año_inicial = Hoja1.Cells(5, 2) año_inicial_copia = año_inicial Hoja2.Range("HY1:IJ37").Copy 'Aquí copio las tablas For i = 0 To (n_años 1) Hoja2.Range(Hoja2.Cells(1, 1 + 14 * i), Hoja2.Cells(37, 12 + 14 * i)).PasteSpecial Next i For i = 0 To (n_años 1) 'Aquí copio los años dentro de las tablas de datos... Hoja2.Cells(1, 2 + 14 * i) = año_inicial_copia año_inicial_copia = año_inicial_copia + 1 Next i End Sub
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .94
Sub Tabla_p15() 'Suma total del precio de la energía Dim prec_ene_1 Dim prec_ene_2 Dim prec_ene_3 Dim prec_ene_4 Dim prec_ene_5 Dim prec_feb_1 Dim prec_feb_2 Dim prec_feb_3 Dim prec_feb_4 Dim prec_feb_5 Dim prec_mar_1 Dim prec_mar_2 Dim prec_mar_3 Dim prec_mar_4 Dim prec_mar_5 Dim prec_abr_1 Dim prec_abr_2 Dim prec_abr_3 Dim prec_abr_4 Dim prec_abr_5 Dim prec_may_1 Dim prec_may_2 Dim prec_may_3 Dim prec_may_4 Dim prec_may_5 Dim prec_jun_1 Dim prec_jun_2 Dim prec_jun_3 Dim prec_jun_4 Dim prec_jun_5 Dim prec_jul_1 Dim prec_jul_2 Dim prec_jul_3 Dim prec_jul_4 Dim prec_jul_5 Dim prec_ago_1 Dim prec_ago_2 Dim prec_ago_3 Dim prec_ago_4 Dim prec_ago_5 Dim prec_sep_1 Dim prec_sep_2 Dim prec_sep_3 Dim prec_sep_4 Dim prec_sep_5 Dim prec_oct_1 Dim prec_oct_2 Dim prec_oct_3 Dim prec_oct_4 Dim prec_oct_5 Dim prec_nov_1 Dim prec_nov_2 Dim prec_nov_3 Dim prec_nov_4 Dim prec_nov_5
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .95
Dim prec_dic_1 Dim prec_dic_2 Dim prec_dic_3 Dim prec_dic_4 Dim prec_dic_5 'Suma del número de horas que tenemos de cada periodo y mes. Para calcular la media. Dim num_ene_1 Dim num_ene_2 Dim num_ene_3 Dim num_ene_4 Dim num_ene_5 Dim num_feb_1 Dim num_feb_2 Dim num_feb_3 Dim num_feb_4 Dim num_feb_5 Dim num_mar_1 Dim num_mar_2 Dim num_mar_3 Dim num_mar_4 Dim num_mar_5 Dim num_abr_1 Dim num_abr_2 Dim num_abr_3 Dim num_abr_4 Dim num_abr_5 Dim num_may_1 Dim num_may_2 Dim num_may_3 Dim num_may_4 Dim num_may_5 Dim num_jun_1 Dim num_jun_2 Dim num_jun_3 Dim num_jun_4 Dim num_jun_5 Dim num_jul_1 Dim num_jul_2 Dim num_jul_3 Dim num_jul_4 Dim num_jul_5 Dim num_ago_1 Dim num_ago_2 Dim num_ago_3 Dim num_ago_4 Dim num_ago_5 Dim num_sep_1 Dim num_sep_2 Dim num_sep_3 Dim num_sep_4 Dim num_sep_5 Dim num_oct_1 Dim num_oct_2 Dim num_oct_3 Dim num_oct_4 Dim num_oct_5
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .96
Dim num_nov_1 Dim num_nov_2 Dim num_nov_3 Dim num_nov_4 Dim num_nov_5 Dim num_dic_1 Dim num_dic_2 Dim num_dic_3 Dim num_dic_4 Dim num_dic_5 ' Fijamos valores iniciales prec_ene_1 = 0 prec_ene_2 = 0 prec_ene_3 = 0 prec_ene_4 = 0 prec_ene_5 = 0 prec_feb_1 = 0 prec_feb_2 = 0 prec_feb_3 = 0 prec_feb_4 = 0 prec_feb_5 = 0 prec_mar_1 = 0 prec_mar_2 = 0 prec_mar_3 = 0 prec_mar_4 = 0 prec_mar_5 = 0 prec_abr_1 = 0 prec_abr_2 = 0 prec_abr_3 = 0 prec_abr_4 = 0 prec_abr_5 = 0 prec_may_1 = 0 prec_may_2 = 0 prec_may_3 = 0 prec_may_4 = 0 prec_may_5 = 0 prec_jun_1 = 0 prec_jun_2 = 0 prec_jun_3 = 0 prec_jun_4 = 0 prec_jun_5 = 0 prec_jul_1 = 0 prec_jul_2 = 0 prec_jul_3 = 0 prec_jul_4 = 0 prec_jul_5 = 0 prec_ago_1 = 0 prec_ago_2 = 0 prec_ago_3 = 0 prec_ago_4 = 0 prec_ago_5 = 0 prec_sep_1 = 0 prec_sep_2 = 0 prec_sep_3 = 0 prec_sep_4 = 0 prec_sep_5 = 0 prec_oct_1 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .97
prec_oct_2 = 0 prec_oct_3 = 0 prec_oct_4 = 0 prec_oct_5 = 0 prec_nov_1 = 0 prec_nov_2 = 0 prec_nov_3 = 0 prec_nov_4 = 0 prec_nov_5 = 0 prec_dic_1 = 0 prec_dic_2 = 0 prec_dic_3 = 0 prec_dic_4 = 0 prec_dic_5 = 0 'Fijamos valores iniciales del número de horas num_ene_1 = 0 num_ene_2 = 0 num_ene_3 = 0 num_ene_4 = 0 num_ene_5 = 0 num_feb_1 = 0 num_feb_2 = 0 num_feb_3 = 0 num_feb_4 = 0 num_feb_5 = 0 num_mar_1 = 0 num_mar_2 = 0 num_mar_3 = 0 num_mar_4 = 0 num_mar_5 = 0 num_abr_1 = 0 num_abr_2 = 0 num_abr_3 = 0 num_abr_4 = 0 num_abr_5 = 0 num_may_1 = 0 num_may_2 = 0 num_may_3 = 0 num_may_4 = 0 num_may_5 = 0 num_jun_1 = 0 num_jun_2 = 0 num_jun_3 = 0 num_jun_4 = 0 num_jun_5 = 0 num_jul_1 = 0 num_jul_2 = 0 num_jul_3 = 0 num_jul_4 = 0 num_jul_5 = 0 num_ago_1 = 0 num_ago_2 = 0 num_ago_3 = 0 num_ago_4 = 0 num_ago_5 = 0 num_sep_1 = 0 num_sep_2 = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .98
num_sep_3 = 0 num_sep_4 = 0 num_sep_5 = 0 num_oct_1 = 0 num_oct_2 = 0 num_oct_3 = 0 num_oct_4 = 0 num_oct_5 = 0 num_nov_1 = 0 num_nov_2 = 0 num_nov_3 = 0 num_nov_4 = 0 num_nov_5 = 0 num_dic_1 = 0 num_dic_2 = 0 num_dic_3 = 0 num_dic_4 = 0 num_dic_5 = 0 Dim n_años As Integer Dim i As Integer Dim fila_precios As Integer Dim fila_fecha As Integer Dim precio Dim mes As Integer Dim periodo As Integer i = 0 n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) For fila_precios = 10 To 8769 fila_fecha = fila_precios 7 precio = Hoja1.Cells(fila_precios, 2 + 3 * i) mes = Hoja3.Cells(fila_fecha, 3 + 8 * i) periodo = Hoja3.Cells(fila_fecha, 7 + 8 * i) If ((mes = 1) And (periodo = 1)) Then prec_ene_1 = prec_ene_1 + precio num_ene_1 = num_ene_1 + 1 End If If ((mes = 1) And (periodo = 2)) Then prec_ene_2 = prec_ene_2 + precio num_ene_2 = num_ene_2 + 1 End If If ((mes = 1) And (periodo = 3)) Then prec_ene_3 = prec_ene_3 + precio num_ene_3 = num_ene_3 + 1 End If If ((mes = 1) And (periodo = 4)) Then prec_ene_4 = prec_ene_4 + precio num_ene_4 = num_ene_4 + 1 End If If ((mes = 1) And (periodo = 5)) Then prec_ene_5 = prec_ene_5 + precio num_ene_5 = num_ene_5 + 1 End If If ((mes = 2) And (periodo = 1)) Then prec_feb_1 = prec_feb_1 + precio num_feb_1 = num_feb_1 + 1 End If If ((mes = 2) And (periodo = 2)) Then prec_feb_2 = prec_feb_2 + precio num_feb_2 = num_feb_2 + 1
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .99
End If If ((mes = 2) And (periodo = 3)) Then prec_feb_3 = prec_feb_3 + precio num_feb_3 = num_feb_3 + 1 End If If ((mes = 2) And (periodo = 4)) Then prec_feb_4 = prec_feb_4 + precio num_feb_4 = num_feb_4 + 1 End If If ((mes = 2) And (periodo = 5)) Then prec_feb_5 = prec_feb_5 + precio num_feb_5 = num_feb_5 + 1 End If If ((mes = 3) And (periodo = 1)) Then prec_mar_1 = prec_mar_1 + precio num_mar_1 = num_mar_1 + 1 End If If ((mes = 3) And (periodo = 2)) Then prec_mar_2 = prec_mar_2 + precio num_mar_2 = num_mar_2 + 1 End If If ((mes = 3) And (periodo = 3)) Then prec_mar_3 = prec_mar_3 + precio num_mar_3 = num_mar_3 + 1 End If If ((mes = 3) And (periodo = 4)) Then prec_mar_4 = prec_mar_4 + precio num_mar_4 = num_mar_4 + 1 End If If ((mes = 3) And (periodo = 5)) Then prec_mar_5 = prec_mar_5 + precio num_mar_5 = num_mar_5 + 1 End If If ((mes = 4) And (periodo = 1)) Then prec_abr_1 = prec_abr_1 + precio num_abr_1 = num_abr_1 + 1 End If If ((mes = 4) And (periodo = 2)) Then prec_abr_2 = prec_abr_2 + precio num_abr_2 = num_abr_2 + 1 End If If ((mes = 4) And (periodo = 3)) Then prec_abr_3 = prec_abr_3 + precio num_abr_3 = num_abr_3 + 1 End If If ((mes = 4) And (periodo = 4)) Then prec_abr_4 = prec_abr_4 + precio num_abr_4 = num_abr_4 + 1 End If If ((mes = 4) And (periodo = 5)) Then prec_abr_5 = prec_abr_5 + precio num_abr_5 = num_abr_5 + 1 End If If ((mes = 5) And (periodo = 1)) Then prec_may_1 = prec_may_1 + precio num_may_1 = num_may_1 + 1 End If If ((mes = 5) And (periodo = 2)) Then prec_may_2 = prec_may_2 + precio num_may_2 = num_may_2 + 1 End If If ((mes = 5) And (periodo = 3)) Then prec_may_3 = prec_may_3 + precio num_may_3 = num_may_3 + 1 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .100
If ((mes = 5) And (periodo = 4)) Then prec_may_4 = prec_may_4 + precio num_may_4 = num_may_4 + 1 End If If ((mes = 5) And (periodo = 5)) Then prec_may_5 = prec_may_5 + precio num_may_5 = num_may_5 + 1 End If If ((mes = 6) And (periodo = 1)) Then prec_jun_1 = prec_jun_1 + precio num_jun_1 = num_jun_1 + 1 End If If ((mes = 6) And (periodo = 2)) Then prec_jun_2 = prec_jun_2 + precio num_jun_2 = num_jun_2 + 1 End If If ((mes = 6) And (periodo = 3)) Then prec_jun_3 = prec_jun_3 + precio num_jun_3 = num_jun_3 + 1 End If If ((mes = 6) And (periodo = 4)) Then prec_jun_4 = prec_jun_4 + precio num_jun_4 = num_jun_4 + 1 End If If ((mes = 6) And (periodo = 5)) Then prec_jun_5 = prec_jun_5 + precio num_jun_5 = num_jun_5 + 1 End If If ((mes = 7) And (periodo = 1)) Then prec_jul_1 = prec_jul_1 + precio num_jul_1 = num_jul_1 + 1 End If If ((mes = 7) And (periodo = 2)) Then prec_jul_2 = prec_jul_2 + precio num_jul_2 = num_jul_2 + 1 End If If ((mes = 7) And (periodo = 3)) Then prec_jul_3 = prec_jul_3 + precio num_jul_3 = num_jul_3 + 1 End If If ((mes = 7) And (periodo = 4)) Then prec_jul_4 = prec_jul_4 + precio num_jul_4 = num_jul_4 + 1 End If If ((mes = 7) And (periodo = 5)) Then prec_jul_5 = prec_jul_5 + precio num_jul_5 = num_jul_5 + 1 End If If ((mes = 8) And (periodo = 1)) Then prec_ago_1 = prec_ago_1 + precio num_ago_1 = num_ago_1 + 1 End If If ((mes = 8) And (periodo = 2)) Then prec_ago_2 = prec_ago_2 + precio num_ago_2 = num_ago_2 + 1 End If If ((mes = 8) And (periodo = 3)) Then prec_ago_3 = prec_ago_3 + precio num_ago_3 = num_ago_3 + 1 End If If ((mes = 8) And (periodo = 4)) Then prec_ago_4 = prec_ago_4 + precio num_ago_4 = num_ago_4 + 1 End If If ((mes = 8) And (periodo = 5)) Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .101
prec_ago_5 = prec_ago_5 + precio num_ago_5 = num_ago_5 + 1 End If If ((mes = 9) And (periodo = 1)) Then prec_sep_1 = prec_sep_1 + precio num_sep_1 = num_sep_1 + 1 End If If ((mes = 9) And (periodo = 2)) Then prec_sep_2 = prec_sep_2 + precio num_sep_2 = num_sep_2 + 1 End If If ((mes = 9) And (periodo = 3)) Then prec_sep_3 = prec_sep_3 + precio num_sep_3 = num_sep_3 + 1 End If If ((mes = 9) And (periodo = 4)) Then prec_sep_4 = prec_sep_4 + precio num_sep_4 = num_sep_4 + 1 End If If ((mes = 9) And (periodo = 5)) Then prec_sep_5 = prec_sep_5 + precio num_sep_5 = num_sep_5 + 1 End If If ((mes = 10) And (periodo = 1)) Then prec_oct_1 = prec_oct_1 + precio num_oct_1 = num_oct_1 + 1 End If If ((mes = 10) And (periodo = 2)) Then prec_oct_2 = prec_oct_2 + precio num_oct_2 = num_oct_2 + 1 End If If ((mes = 10) And (periodo = 3)) Then prec_oct_3 = prec_oct_3 + precio num_oct_3 = num_oct_3 + 1 End If If ((mes = 10) And (periodo = 4)) Then prec_oct_4 = prec_oct_4 + precio num_oct_4 = num_oct_4 + 1 End If If ((mes = 10) And (periodo = 5)) Then prec_oct_5 = prec_oct_5 + precio num_oct_5 = num_oct_5 + 1 End If If ((mes = 11) And (periodo = 1)) Then prec_nov_1 = prec_nov_1 + precio num_nov_1 = num_nov_1 + 1 End If If ((mes = 11) And (periodo = 2)) Then prec_nov_2 = prec_nov_2 + precio num_nov_2 = num_nov_2 + 1 End If If ((mes = 11) And (periodo = 3)) Then prec_nov_3 = prec_nov_3 + precio num_nov_3 = num_nov_3 + 1 End If If ((mes = 11) And (periodo = 4)) Then prec_nov_4 = prec_nov_4 + precio num_nov_4 = num_nov_4 + 1 End If If ((mes = 11) And (periodo = 5)) Then prec_nov_5 = prec_nov_5 + precio num_nov_5 = num_nov_5 + 1 End If If ((mes = 12) And (periodo = 1)) Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .102
prec_dic_1 = prec_dic_1 + precio num_dic_1 = num_dic_1 + 1 End If If ((mes = 12) And (periodo = 2)) Then prec_dic_2 = prec_dic_2 + precio num_dic_2 = num_dic_2 + 1 End If If ((mes = 12) And (periodo = 3)) Then prec_dic_3 = prec_dic_3 + precio num_dic_3 = num_dic_3 + 1 End If If ((mes = 12) And (periodo = 4)) Then prec_dic_4 = prec_dic_4 + precio num_dic_4 = num_dic_4 + 1 End If If ((mes = 12) And (periodo = 5)) Then prec_dic_5 = prec_dic_5 + precio num_dic_5 = num_dic_5 + 1 End If Next fila_precios 'Comprobar con uno de los meses que el resultado obtenido es correcto... If num_ene_1 <> 0 Then Hoja2.Cells(6, 2 + 14 * i) = prec_ene_1 / num_ene_1 End If If num_ene_2 <> 0 Then Hoja2.Cells(6, 3 + 14 * i) = prec_ene_2 / num_ene_2 End If If num_ene_3 <> 0 Then Hoja2.Cells(6, 4 + 14 * i) = prec_ene_3 / num_ene_3 End If If num_ene_4 <> 0 Then Hoja2.Cells(6, 5 + 14 * i) = prec_ene_4 / num_ene_4 End If If num_ene_5 <> 0 Then Hoja2.Cells(6, 6 + 14 * i) = prec_ene_5 / num_ene_5 End If If num_ene_1 = 0 Then Hoja2.Cells(6, 2 + 14 * i) = 0 End If If num_ene_2 = 0 Then Hoja2.Cells(6, 3 + 14 * i) = 0 End If If num_ene_3 = 0 Then Hoja2.Cells(6, 4 + 14 * i) = 0 End If If num_ene_4 = 0 Then Hoja2.Cells(6, 5 + 14 * i) = 0 End If If num_ene_5 = 0 Then Hoja2.Cells(6, 6 + 14 * i) = 0 End If If num_feb_1 <> 0 Then Hoja2.Cells(7, 2 + 14 * i) = prec_feb_1 / num_feb_1 End If If num_feb_2 <> 0 Then Hoja2.Cells(7, 3 + 14 * i) = prec_feb_2 / num_feb_2 End If If num_feb_3 <> 0 Then Hoja2.Cells(7, 4 + 14 * i) = prec_feb_3 / num_feb_3 End If If num_feb_4 <> 0 Then Hoja2.Cells(7, 5 + 14 * i) = prec_feb_4 / num_feb_4 End If If num_feb_5 <> 0 Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .103
Hoja2.Cells(7, 6 + 14 * i) = prec_feb_5 / num_feb_5 End If If num_feb_1 = 0 Then Hoja2.Cells(7, 2 + 14 * i) = 0 End If If num_feb_2 = 0 Then Hoja2.Cells(7, 3 + 14 * i) = 0 End If If num_feb_3 = 0 Then Hoja2.Cells(7, 4 + 14 * i) = 0 End If If num_feb_4 = 0 Then Hoja2.Cells(7, 5 + 14 * i) = 0 End If If num_feb_5 = 0 Then Hoja2.Cells(7, 6 + 14 * i) = 0 End If If num_mar_1 <> 0 Then Hoja2.Cells(8, 2 + 14 * i) = prec_mar_1 / num_mar_1 End If If num_mar_2 <> 0 Then Hoja2.Cells(8, 3 + 14 * i) = prec_mar_2 / num_mar_2 End If If num_mar_3 <> 0 Then Hoja2.Cells(8, 4 + 14 * i) = prec_mar_3 / num_mar_3 End If If num_mar_4 <> 0 Then Hoja2.Cells(8, 5 + 14 * i) = prec_mar_4 / num_mar_4 End If If num_mar_5 <> 0 Then Hoja2.Cells(8, 6 + 14 * i) = prec_mar_5 / num_mar_5 End If If num_mar_1 = 0 Then Hoja2.Cells(8, 2 + 14 * i) = 0 End If If num_mar_2 = 0 Then Hoja2.Cells(8, 3 + 14 * i) = 0 End If If num_mar_3 = 0 Then Hoja2.Cells(8, 4 + 14 * i) = 0 End If If num_mar_4 = 0 Then Hoja2.Cells(8, 5 + 14 * i) = 0 End If If num_mar_5 = 0 Then Hoja2.Cells(8, 6 + 14 * i) = 0 End If If num_abr_1 <> 0 Then Hoja2.Cells(9, 2 + 14 * i) = prec_abr_1 / num_abr_1 End If If num_abr_2 <> 0 Then Hoja2.Cells(9, 3 + 14 * i) = prec_abr_2 / num_abr_2 End If If num_abr_3 <> 0 Then Hoja2.Cells(9, 4 + 14 * i) = prec_abr_3 / num_abr_3 End If If num_abr_4 <> 0 Then Hoja2.Cells(9, 5 + 14 * i) = prec_abr_4 / num_abr_4 End If If num_abr_5 <> 0 Then Hoja2.Cells(9, 6 + 14 * i) = prec_abr_5 / num_abr_5 End If If num_abr_1 = 0 Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .104
Hoja2.Cells(9, 2 + 14 * i) = 0 End If If num_abr_2 = 0 Then Hoja2.Cells(9, 3 + 14 * i) = 0 End If If num_abr_3 = 0 Then Hoja2.Cells(9, 4 + 14 * i) = 0 End If If num_abr_4 = 0 Then Hoja2.Cells(9, 5 + 14 * i) = 0 End If If num_abr_5 = 0 Then Hoja2.Cells(9, 6 + 14 * i) = 0 End If If num_may_1 <> 0 Then Hoja2.Cells(10, 2 + 14 * i) = prec_may_1 / num_may_1 End If If num_may_2 <> 0 Then Hoja2.Cells(10, 3 + 14 * i) = prec_may_2 / num_may_2 End If If num_may_3 <> 0 Then Hoja2.Cells(10, 4 + 14 * i) = prec_may_3 / num_may_3 End If If num_may_4 <> 0 Then Hoja2.Cells(10, 5 + 14 * i) = prec_may_4 / num_may_4 End If If num_may_5 <> 0 Then Hoja2.Cells(10, 6 + 14 * i) = prec_may_5 / num_may_5 End If If num_may_1 = 0 Then Hoja2.Cells(10, 2 + 14 * i) = 0 End If If num_may_2 = 0 Then Hoja2.Cells(10, 3 + 14 * i) = 0 End If If num_may_3 = 0 Then Hoja2.Cells(10, 4 + 14 * i) = 0 End If If num_may_4 = 0 Then Hoja2.Cells(10, 5 + 14 * i) = 0 End If If num_may_5 = 0 Then Hoja2.Cells(10, 6 + 14 * i) = 0 End If If num_jun_1 <> 0 Then Hoja2.Cells(11, 2 + 14 * i) = prec_jun_1 / num_jun_1 End If If num_jun_2 <> 0 Then Hoja2.Cells(11, 3 + 14 * i) = prec_jun_2 / num_jun_2 End If If num_jun_3 <> 0 Then Hoja2.Cells(11, 4 + 14 * i) = prec_jun_3 / num_jun_3 End If If num_jun_4 <> 0 Then Hoja2.Cells(11, 5 + 14 * i) = prec_jun_4 / num_jun_4 End If If num_jun_5 <> 0 Then Hoja2.Cells(11, 6 + 14 * i) = prec_jun_5 / num_jun_5 End If If num_jun_1 = 0 Then Hoja2.Cells(11, 2 + 14 * i) = 0 End If If num_jun_2 = 0 Then Hoja2.Cells(11, 3 + 14 * i) = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .105
End If If num_jun_3 = 0 Then Hoja2.Cells(11, 4 + 14 * i) = 0 End If If num_jun_4 = 0 Then Hoja2.Cells(11, 5 + 14 * i) = 0 End If If num_jun_5 = 0 Then Hoja2.Cells(11, 6 + 14 * i) = 0 End If If num_jul_1 <> 0 Then Hoja2.Cells(12, 2 + 14 * i) = prec_jul_1 / num_jul_1 End If If num_jul_2 <> 0 Then Hoja2.Cells(12, 3 + 14 * i) = prec_jul_2 / num_jul_2 End If If num_jul_3 <> 0 Then Hoja2.Cells(12, 4 + 14 * i) = prec_jul_3 / num_jul_3 End If If num_jul_4 <> 0 Then Hoja2.Cells(12, 5 + 14 * i) = prec_jul_4 / num_jul_4 End If If num_jul_5 <> 0 Then Hoja2.Cells(12, 6 + 14 * i) = prec_jul_5 / num_jul_5 End If If num_jul_1 = 0 Then Hoja2.Cells(12, 2 + 14 * i) = 0 End If If num_jul_2 = 0 Then Hoja2.Cells(12, 3 + 14 * i) = 0 End If If num_jul_3 = 0 Then Hoja2.Cells(12, 4 + 14 * i) = 0 End If If num_jul_4 = 0 Then Hoja2.Cells(12, 5 + 14 * i) = 0 End If If num_jul_5 = 0 Then Hoja2.Cells(12, 6 + 14 * i) = 0 End If If num_ago_1 <> 0 Then Hoja2.Cells(13, 2 + 14 * i) = prec_ago_1 / num_ago_1 End If If num_ago_2 <> 0 Then Hoja2.Cells(13, 3 + 14 * i) = prec_ago_2 / num_ago_2 End If If num_ago_3 <> 0 Then Hoja2.Cells(13, 4 + 14 * i) = prec_ago_3 / num_ago_3 End If If num_ago_4 <> 0 Then Hoja2.Cells(13, 5 + 14 * i) = prec_ago_4 / num_ago_4 End If If num_ago_5 <> 0 Then Hoja2.Cells(13, 6 + 14 * i) = prec_ago_5 / num_ago_5 End If If num_ago_1 = 0 Then Hoja2.Cells(13, 2 + 14 * i) = 0 End If If num_ago_2 = 0 Then Hoja2.Cells(13, 3 + 14 * i) = 0 End If If num_ago_3 = 0 Then Hoja2.Cells(13, 4 + 14 * i) = 0 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .106
If num_ago_4 = 0 Then Hoja2.Cells(13, 5 + 14 * i) = 0 End If If num_ago_5 = 0 Then Hoja2.Cells(13, 6 + 14 * i) = 0 End If If num_sep_1 <> 0 Then Hoja2.Cells(14, 2 + 14 * i) = prec_sep_1 / num_sep_1 End If If num_sep_2 <> 0 Then Hoja2.Cells(14, 3 + 14 * i) = prec_sep_2 / num_sep_2 End If If num_sep_3 <> 0 Then Hoja2.Cells(14, 4 + 14 * i) = prec_sep_3 / num_sep_3 End If If num_sep_4 <> 0 Then Hoja2.Cells(14, 5 + 14 * i) = prec_sep_4 / num_sep_4 End If If num_sep_5 <> 0 Then Hoja2.Cells(14, 6 + 14 * i) = prec_sep_5 / num_sep_5 End If If num_sep_1 = 0 Then Hoja2.Cells(14, 2 + 14 * i) = 0 End If If num_sep_2 = 0 Then Hoja2.Cells(14, 3 + 14 * i) = 0 End If If num_sep_3 = 0 Then Hoja2.Cells(14, 4 + 14 * i) = 0 End If If num_sep_4 = 0 Then Hoja2.Cells(14, 5 + 14 * i) = 0 End If If num_sep_5 = 0 Then Hoja2.Cells(14, 6 + 14 * i) = 0 End If If num_oct_1 <> 0 Then Hoja2.Cells(15, 2 + 14 * i) = prec_oct_1 / num_oct_1 End If If num_oct_2 <> 0 Then Hoja2.Cells(15, 3 + 14 * i) = prec_oct_2 / num_oct_2 End If If num_oct_3 <> 0 Then Hoja2.Cells(15, 4 + 14 * i) = prec_oct_3 / num_oct_3 End If If num_oct_4 <> 0 Then Hoja2.Cells(15, 5 + 14 * i) = prec_oct_4 / num_oct_4 End If If num_oct_5 <> 0 Then Hoja2.Cells(15, 6 + 14 * i) = prec_oct_5 / num_oct_5 End If If num_oct_1 = 0 Then Hoja2.Cells(15, 2 + 14 * i) = 0 End If If num_oct_2 = 0 Then Hoja2.Cells(15, 3 + 14 * i) = 0 End If If num_oct_3 = 0 Then Hoja2.Cells(15, 4 + 14 * i) = 0 End If If num_oct_4 = 0 Then Hoja2.Cells(15, 5 + 14 * i) = 0 End If If num_oct_5 = 0 Then
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .107
Hoja2.Cells(15, 6 + 14 * i) = 0 End If If num_nov_1 <> 0 Then Hoja2.Cells(16, 2 + 14 * i) = prec_nov_1 / num_nov_1 End If If num_nov_2 <> 0 Then Hoja2.Cells(16, 3 + 14 * i) = prec_nov_2 / num_nov_2 End If If num_nov_3 <> 0 Then Hoja2.Cells(16, 4 + 14 * i) = prec_nov_3 / num_nov_3 End If If num_nov_4 <> 0 Then Hoja2.Cells(16, 5 + 14 * i) = prec_nov_4 / num_nov_4 End If If num_nov_5 <> 0 Then Hoja2.Cells(16, 6 + 14 * i) = prec_nov_5 / num_nov_5 End If If num_nov_1 = 0 Then Hoja2.Cells(16, 2 + 14 * i) = 0 End If If num_nov_2 = 0 Then Hoja2.Cells(16, 3 + 14 * i) = 0 End If If num_nov_3 = 0 Then Hoja2.Cells(16, 4 + 14 * i) = 0 End If If num_nov_4 = 0 Then Hoja2.Cells(16, 5 + 14 * i) = 0 End If If num_nov_5 = 0 Then Hoja2.Cells(16, 6 + 14 * i) = 0 End If If num_dic_1 <> 0 Then Hoja2.Cells(17, 2 + 14 * i) = prec_dic_1 / num_dic_1 End If If num_dic_2 <> 0 Then Hoja2.Cells(17, 3 + 14 * i) = prec_dic_2 / num_dic_2 End If If num_dic_3 <> 0 Then Hoja2.Cells(17, 4 + 14 * i) = prec_dic_3 / num_dic_3 End If If num_dic_4 <> 0 Then Hoja2.Cells(17, 5 + 14 * i) = prec_dic_4 / num_dic_4 End If If num_dic_5 <> 0 Then Hoja2.Cells(17, 6 + 14 * i) = prec_dic_5 / num_dic_5 End If If num_dic_1 = 0 Then Hoja2.Cells(17, 2 + 14 * i) = 0 End If If num_dic_2 = 0 Then Hoja2.Cells(17, 3 + 14 * i) = 0 End If If num_dic_3 = 0 Then Hoja2.Cells(17, 4 + 14 * i) = 0 End If If num_dic_4 = 0 Then Hoja2.Cells(17, 5 + 14 * i) = 0 End If If num_dic_5 = 0 Then Hoja2.Cells(17, 6 + 14 * i) = 0 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .108
Next i End Sub Sub Tabla_p6() 'Suma total del precio de la energía Dim prec_ene_6 Dim prec_feb_6 Dim prec_mar_6 Dim prec_abr_6 Dim prec_may_6 Dim prec_jun_6 Dim prec_jul_6 Dim prec_sep_6 Dim prec_oct_6 Dim prec_nov_6 Dim prec_dic_6 'Suma del número de horas que tenemos de cada mes. Dim num_ene Dim num_feb Dim num_mar Dim num_abr Dim num_may Dim num_jun Dim num_jul Dim num_sep Dim num_oct Dim num_nov Dim num_dic ' Fijamos valores iniciales prec_ene_6 = 0 prec_feb_6 = 0 prec_mar_6 = 0 prec_abr_6 = 0 prec_may_6 = 0 prec_jun_6 = 0 prec_jul_6 = 0 prec_sep_6 = 0 prec_oct_6 = 0 prec_nov_6 = 0 prec_dic_6 = 0 'Fijamos valores iniciales del número de horas num_ene = 0 num_feb = 0 num_mar = 0 num_abr = 0 num_may = 0 num_jun = 0 num_jul = 0 num_sep = 0 num_oct = 0 num_nov = 0 num_dic = 0 Dim n_años As Integer Dim i As Integer Dim fila_precios As Integer Dim fila_fecha As Integer Dim precio Dim mes As Integer Dim periodo As Integer i = 0
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .109
n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) For fila_precios = 10 To 8769 fila_fecha = fila_precios 7 precio = Hoja1.Cells(fila_precios, 2 + 3 * i) mes = Hoja3.Cells(fila_fecha, 3 + 8 * i) periodo = Hoja3.Cells(fila_fecha, 7 + 8 * i) If ((dia_mes <> 1) And (mes <> 1)) And ((dia_mes <> 1) And (mes <> 5)) And ((dia_mes <> 1) And (mes <> 11)) And ((dia_mes <> 6) And (mes <> 12)) And ((dia_mes <> 8) And (mes <> 12)) And ((dia_mes <> 25) And (mes <> 12)) Then If ((mes = 1) And (periodo = 6)) Then prec_ene_6 = prec_ene_6 + precio num_ene = num_ene + 1 End If If ((mes = 2) And (periodo = 6)) Then prec_feb_6 = prec_feb_6 + precio num_feb = num_feb + 1 End If If ((mes = 3) And (periodo = 6)) Then prec_mar_6 = prec_mar_6 + precio num_mar = num_mar + 1 End If If ((mes = 4) And (periodo = 6)) Then prec_abr_6 = prec_abr_6 + precio num_abr = num_abr + 1 End If If ((mes = 5) And (periodo = 6)) Then prec_may_6 = prec_may_6 + precio num_may = num_may + 1 End If If ((mes = 6) And (periodo = 6)) Then prec_jun_6 = prec_jun_6 + precio num_jun = num_jun + 1 End If If ((mes = 7) And (periodo = 6)) Then prec_jul_6 = prec_jul_6 + precio num_jul = num_jul + 1 End If If ((mes = 9) And (periodo = 6)) Then prec_sep_6 = prec_sep_6 + precio num_sep = num_sep + 1 End If If ((mes = 10) And (periodo = 6)) Then prec_oct_6 = prec_oct_6 + precio num_oct = num_oct + 1 End If If ((mes = 11) And (periodo = 6)) Then prec_nov_6 = prec_nov_6 + precio num_nov = num_nov + 1 End If If ((mes = 12) And (periodo = 6)) Then prec_dic_6 = prec_dic_6 + precio num_dic = num_dic + 1 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .110
End If Next fila_precios 'Comprobar con uno de los meses que el resultado obtenido es correcto... If num_ene <> 0 Then Hoja2.Cells(6, 9 + 14 * i) = prec_ene_6 / num_ene End If If num_ene = 0 Then Hoja2.Cells(6, 9 + 14 * i) = 0 End If If num_feb <> 0 Then Hoja2.Cells(7, 9 + 14 * i) = prec_feb_6 / num_feb End If If num_feb = 0 Then Hoja2.Cells(7, 9 + 14 * i) = 0 End If If num_mar <> 0 Then Hoja2.Cells(8, 9 + 14 * i) = prec_mar_6 / num_mar End If If num_mar = 0 Then Hoja2.Cells(8, 9 + 14 * i) = 0 End If If num_abr <> 0 Then Hoja2.Cells(9, 9 + 14 * i) = prec_abr_6 / num_abr End If If num_abr = 0 Then Hoja2.Cells(9, 9 + 14 * i) = 0 End If If num_may <> 0 Then Hoja2.Cells(10, 9 + 14 * i) = prec_may_6 / num_may End If If num_may = 0 Then Hoja2.Cells(10, 9 + 14 * i) = 0 End If If num_jun <> 0 Then Hoja2.Cells(11, 9 + 14 * i) = prec_jun_6 / num_jun End If If num_jun = 0 Then Hoja2.Cells(11, 9 + 14 * i) = 0 End If If num_jul <> 0 Then Hoja2.Cells(12, 9 + 14 * i) = prec_jul_6 / num_jul End If If num_jul = 0 Then Hoja2.Cells(12, 9 + 14 * i) = 0 End If If num_sep <> 0 Then Hoja2.Cells(13, 9 + 14 * i) = prec_sep_6 / num_sep End If If num_sep = 0 Then Hoja2.Cells(13, 9 + 14 * i) = 0 End If If num_oct <> 0 Then Hoja2.Cells(14, 9 + 14 * i) = prec_oct_6 / num_oct End If If num_oct = 0 Then Hoja2.Cells(14, 9 + 14 * i) = 0 End If
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .111
If num_nov <> 0 Then Hoja2.Cells(15, 9 + 14 * i) = prec_nov_6 / num_nov End If If num_nov = 0 Then Hoja2.Cells(15, 9 + 14 * i) = 0 End If If num_dic <> 0 Then Hoja2.Cells(16, 9 + 14 * i) = prec_dic_6 / num_dic End If If num_dic = 0 Then Hoja2.Cells(16, 9 + 14 * i) = 0 End If Next i End Sub Sub prec_agosto() 'Suma total del precio de la energía Dim prec_ago_lab1 Dim prec_ago_lab2 Dim prec_ago_sab Dim prec_abr_domfest 'Suma del número de horas que tenemos de cada mes. Dim num_ago_lab1 Dim num_ago_lab2 Dim num_ago_sab Dim num_ago_domfest ' Fijamos valores iniciales prec_ago_lab1 = 0 prec_ago_lab2 = 0 prec_ago_sab = 0 prec_abr_domfest = 0 'Fijamos valores iniciales del número de horas num_ago_lab1 = 0 num_ago_lab2 = 0 num_ago_sab = 0 num_ago_domfest = 0 Dim n_años As Integer Dim i As Integer Dim fila_precios As Integer Dim fila_fecha As Integer Dim precio Dim mes As Integer Dim dia As Integer Dim dia_mes As Integer Dim hora As Integer Dim periodo As Integer i = 0 n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) For fila_precios = 10 To 8769 fila_fecha = fila_precios 7 precio = Hoja1.Cells(fila_precios, 2 + 3 * i) mes = Hoja3.Cells(fila_fecha, 3 + 8 * i) dia = Hoja3.Cells(fila_fecha, 4 + 8 * i) dia_mes = Hoja3.Cells(fila_fecha, 5 + 8 * i)
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .112
hora = Hoja3.Cells(fila_fecha, 78) periodo = Hoja3.Cells(fila_fecha, 7 + 8 * i) If ((mes = 8) And (periodo = 6) And ((dia = 1) Or (dia = 2) Or (dia = 3) Or (dia = 4) Or (dia = 5)) And ((hora = 0) Or (hora = 1) Or (hora = 2) Or (hora = 3) Or (hora = 4) Or (hora = 5) Or (hora = 6) Or (hora = 7) Or (hora = 8))) Then prec_ago_lab1 = prec_ago_lab1 + precio num_ago_lab1 = num_ago_lab1 + 1 End If If ((mes = 8) And (periodo = 6) And ((dia = 1) Or (dia = 2) Or (dia = 3) Or (dia = 4) Or (dia = 5)) And ((hora <> 0) And (hora <> 1) And (hora <> 2) And (hora <> 3) And (hora <> 4) And (hora <> 5) And (hora <> 6) And (hora <> 7) And (hora <> 8))) Then prec_ago_lab2 = prec_ago_lab2 + precio num_ago_lab2 = num_ago_lab2 + 1 End If If ((mes = 8) And (periodo = 6) And (dia = 6)) Then prec_ago_sab = prec_ago_sab + precio num_ago_sab = num_ago_sab + 1 End If If ((mes = 8) And (periodo = 6) And (dia = 7) Or ((dia_mes = 1) And (mes = 1)) Or ((dia_mes = 1) And (mes = 5)) Or ((dia_mes = 1) And (mes = 11)) Or ((dia_mes = 6) And (mes = 12)) Or ((dia_mes = 8) And (mes = 12)) Or ((dia_mes = 25) And (mes = 12))) Then prec_ago_domfest = prec_ago_domfest + precio num_ago_domfest = num_ago_domfest + 1 End If Next fila_precios 'Comprobar con uno de los meses que el resultado obtenido es correcto... If num_ago_lab1 <> 0 Then Hoja2.Cells(6, 12 + 14 * i) = prec_ago_lab1 / num_ago_lab1 End If If num_ene = 0 Then Hoja2.Cells(6, 12 + 14 * i) = 0 End If If num_ago_lab2 <> 0 Then Hoja2.Cells(7, 12 + 14 * i) = prec_ago_lab2 / num_ago_lab2 End If If num_ago_lab2 = 0 Then Hoja2.Cells(7, 12 + 14 * i) = 0 End If If num_ago_sab <> 0 Then Hoja2.Cells(8, 12 + 14 * i) = prec_ago_sab / num_ago_sab End If If num_ago_sab = 0 Then Hoja2.Cells(8, 12 + 14 * i) = 0 End If If num_ago_domfest <> 0 Then Hoja2.Cells(9, 12 + 14 * i) = prec_ago_domfest / num_ago_domfest End If If num_ago_domfest = 0 Then Hoja2.Cells(9, 12 + 14 * i) = 0 End If Next i End Sub Sub prec_medio() Dim n_años As Integer
HERRAMIENTAS INFORMÁTICAS DESARROLLADAS 5 .113
Dim i As Integer Dim precio Dim precio_total Dim n As Integer Dim fila_precios As Integer i = 0 n_años = Hoja1.Cells(4, 2) precio_total = 0 For i = 0 To (n_años 1) n = 0 For fila_precios = 10 To 8769 precio = Hoja1.Cells(fila_precios, 2 + 3 * i) precio_total = precio_total + precio n = n + 1 Next fila_precios Hoja2.Cells(20, 2 + 14 * i) = precio_total / (n) Next i End Sub Sub Precio_unidad() Dim n_años As Integer Dim i As Integer Dim fila As Integer Dim columna As Integer Dim pm i = 0 n_años = Hoja1.Cells(4, 2) For i = 0 To (n_años 1) pm = Hoja2.Cells(20, 2 + 14 * i) For fila = 6 To 17 For columna = 2 + 14 * i To (6 + 14 * i) Hoja2.Cells(fila + 20, columna) = Hoja2.Cells(fila, columna) / pm Next columna Next fila For fila = 6 To 16 columna = 9 + 14 * i Hoja2.Cells(fila + 20, columna) = Hoja2.Cells(fila, columna) / pm Next fila For fila = 6 To 9 columna = 12 + 14 * i Hoja2.Cells(fila + 20, columna) = Hoja2.Cells(fila, columna) / pm Next fila Next i End Sub