Jump to content

[Solucionado]Sumar con memoria


Ricar

Recommended Posts

Buenas tardes , me presento a todos.

Soy novato en esto del Excel, y me pregunto si se puede hacer un tema de memorizar un número. Me explico.

A1=3; B1=4 C1=7 (A1+B1)

Y luego si cargo un número a A1 y otro a B1, en C3 aparezca la suma del numero antigüo mas el nuevo. A1=2; B1=3 C1=12 (7+5)

Tambien me pregunto si se le pueden dar condicionantes a una casilla,

Ejemplo, si pongo el valor de A1=1, la casilla se ponga de color verde y me salga el nombre Pepe, y si pongo el valor 0 se ponga roja y me salga el nombre de Maria.

Muchas gracias.

Link to comment
Share on other sites

Guest luigi

Hola Ricar:

Lo primero darte la bienvenida al Foro, luego recomendarte que leas las Recomendaciones y después las Normas/Reglas del Foro (Los enlaces están en mi Firma). Veras que una vez realizadas las Lecturas …. ¿Se Puede,……? Aunque no soy un experto en Excel yo diría que sí, pero para eso también tienes que ayudarte/ayudarnos con lo mínimo la subida de un Archivo y unas claras explicaciones de tus dudas/problemas dentro del mismo y veras que aquí se te ayudara.

Espero haber sido de ayuda para que te podamos ayudar.

Un Saludo, Luis

Link to comment
Share on other sites

Ricard, bienvenido a la comunidad.

Vos planteas dos temas:

1) Memorizar con formulas me animaria a decir que es imposible, necesitas el apoyo de Macros (codigo VBA) y eso... para memorizar, asi como lo planteas, lo dudo... vamos a analizarlo mas...

2) Si se puede condicionar, pero donde queres poner Maria o Pepe? En la misma celda A1?

Espero tus respuestas...

Saludos

Link to comment
Share on other sites

A ver...

Fijate el adjunto que te subo... [grrrr no puedo adjuntar por el proxy de mi trabajo]

Es muy basico... pero muestro que si se puede lo que decis...

El codigo: (yo hice un modulo)


Sub condicional()
If [A1].Value = 1 Then
[A1].Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent3
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ActiveCell.FormulaR1C1 = "Pepe"
ElseIf [A1].Value = 0 Then
Range("A1").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ActiveCell.FormulaR1C1 = "Maria"
ElseIf [A1] < 0 Or [A1] > 1 Then
Range("A1").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
End Sub
[/CODE]

Pd: de una que otros cracks te pueden dar un codigo mas depurado :)

Link to comment
Share on other sites

A ver...

Fijate el adjunto que te subo... [grrrr no puedo adjuntar por el proxy de mi trabajo]

Es muy basico... pero muestro que si se puede lo que decis...

El codigo: (yo hice un modulo)


Sub condicional()
If [A1].Value = 1 Then
[A1].Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent3
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ActiveCell.FormulaR1C1 = "Pepe"
ElseIf [A1].Value = 0 Then
Range("A1").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ActiveCell.FormulaR1C1 = "Maria"
ElseIf [A1] < 0 Or [A1] > 1 Then
Range("A1").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
End Sub
[/CODE]

Pd: de una que otros cracks te pueden dar un codigo mas depurado :)

Muchas gracias por la info, pero sinceramente no me entero de nada de lo que pone.ç

Donde y como tengo que insertar todo ese texto.

Link to comment
Share on other sites

Hola Ricar

El código de SidV es para ponerlo en un módulo del editor de Basic de excel:

Abre el archivo y pulsa Alt+F11 (Esto abre el editor de Basic).

En la barra de menús selecciona "Insertar" ,e inserta un módulo.

Pega el código.

La macro la puedes activar desde botón asociado a la macro: Barra de herramientas para formularios y seleccionar botón.

------------------------------------------------

Este código actua cuando insertas un dato en la columna "A" de la hoja

Lo tienes que pegar en la hoja que quieres que actue (Sige los mismos pasos para abrir el editor de basic)

La ventana -Explorador de proyectos- (Superior-Izquierda en el editor de basic) doble clik en la hoja requerida.

Pegas lo siguiente:

Private Sub worksheet_change(ByVal target As Range)

If target.Column = 1 Then

If target = 1 Then

target = "Pepe"

target.Interior.ColorIndex = 3

End If

If target = 0 Then

target = "Maria"

target.Interior.ColorIndex = 4

End If

End If

End Sub

a ver si con esto se soluciona el tema.

Saludos

Link to comment
Share on other sites

He estado probando de introducir los datos, y me han surgido varias dudas.

El programa que ha puesto SidV, no me funciona,(seguro que lo hago mal)

El caso, no entiendo porque abrir un módulo, cuando si le hago doble click en una hoja y pego el texto ya funciona, y lo de los macro, como funciona?.

El texto de Ama me ha funcionado, pero no entiendo lo de los módulos,(vamos que soy muuuuy novato). y tambien quisiera saber si puedo hacer que sólo funcione de la columna A1, hasta la A10.

En el tema de la Autosuma, la verdad es que es un programa muy interesante, pero no hace lo que realmente necesito.Quisiera cargar datos en A y B, y que el resultado se viese en C, y fuese acumulando memoria en C.

Muchas gracias de antemano.

Link to comment
Share on other sites

Guest luigi

Ricard:

Te subo un archivo con todo lo posteado anteriormente por todos, para que veas como funciona todo, en el hay alguna explicacion, pero tambien te recomiendo busques algo por el foro y por la red sobre VBA, para ir entendiendo como funciona. Siento no poder ayudarte mas pero mis conocimientos todavia son limitados, seguro que Ama y Sidv te podran agregar algo mas en relacion al tema

Saludos, Luis.

ricard.zip

Link to comment
Share on other sites

Aquí dejo el programita que estoy haciendo, y doy información de lo que hace, y de lo que me gustaría que hiciese, por si algún compañer@ me pudiese ayudar.

MEGAUPLOAD - The leading online storage and file delivery service

El tema, es que unos amigos y familiares, vamos a realizar una peña para jugar a la lotería, y como me voy a encargar de todas las cuentas, había diseñado este programita de gestión para organizarlo mejor.

El caso, es que funciona bien si no falla nadie en el dinero (Hay uno que seguro que falla más de una vez). Cada semana se introduce la apuesta, y automaticamente se descuenta de saldo( la apuesta será de 50€ en total).

El problema es cuando alguien ya no tiene saldo y en lugar de 10, son 9 o menos los jugadores. Lo divede bien en porcentajes, pero al no memorizar el estado anterior en saldo actual, varia todo.

Lo que me gustaría hacer, es que en la columna (de c3 a c12), se activase de color verde que "JUEGA" si tiene saldo, y "NO JUEGA" si tiene menos de 5€ cuando alguien fallase en los ingresos al tiempo que se pausase todas sus cuentas hasta que no volviese a jugar. Tambien al haber cambiado de jugadores, que al volver a jugar todos no se cambien las cuentas.

Siento no haberme explicado mejor. Si alguien tiene dudas en funcionamiento que me pregunte por favor.

Gracias

Link to comment
Share on other sites

Hola Ricar

Revisa el adjunto ,he puesto una columna en la que se van sumando los ingresos semanales.

El rango "C3:C12" por medio de formato condicional se colorea de verde si el valor de la celda en la columna "Ingresos" es superior a cero (Para emular participante ausente pon el valor 0 en la columna "Ingresos")

Las formulas en la columna "Saldo actual" ahora hacen referencia a la nueva columna.

[ATTACH]16344.vB[/ATTACH]

Comenta como va .

Saludos.

Quini 1.zip

Link to comment
Share on other sites

Muchas gracias Ama por tu contestación, lo he estado revisando y no me funciona bien.

Cuando cargo 50€ de apuesta semanal en la segunda cuadricula, no se altera ninguna columna excepto la de saldo actual, y si algún participante se queda a cero, se le sigue descontando.

Mi idea, es que funcionase como el programa original, con la peculiaridad, de que si un participante se queda con menos de 5€, que es la apuesta semanal acordada, se le bloqueasen todas sus cuentas, y no se alterasen al seguir jugando los demás. Tambien teniendo en cuenta que a los demás se les cambiará el porcentaje de premios, y la apuesta semanal será superior a 5€, y que al volver a jugar el "moroso", no se alteren las cuentas de nadie, y se continue normal.

Quizás lo más fácil sería no dejar jugar a este compañero y así nos evitamos líos.

Muchas gracias por tu tiempo dedicado.

Link to comment
Share on other sites

Hola Ricar

!Ups¡ .Debí subir el archivo equivocado.(No hace nada porque no hay código alguno)

El adjunto es el que está bien.

[ATTACH]16417[/ATTACH]

Prueba a ver que tal va ,ya dirás.

Saludos

Muchas gracias Ama, te has tenido que dar un buen "curro", funciona bastante bien, pero le quedan pequeñas cosas por retocar.

Aparece un 20 en la casilla A1, que es?

Cuando cargo 50€ en otro mes que no sea Septiembre, el programa no actua.

Cuando pongo un valor en la casilla de premios, y hay menos de 10 personas jugando, no sale bien el reparto, y tambien se le reparte al que no ha jugado.

Por lo demás creo que está bien.

Muchas gracias por tu empeño.

Link to comment
Share on other sites

Hola Ricar

Te comento que el 20 en la casilla A1 no hace nada ,se quedo hay después de usar la casilla para ver algún resultado mientras hacia el código.

Lo de cargar 50€ en otro mes ya está solucionado.

Para poder repartir el premio entre los participante he usado la columna A para ver los que juegan en la jornada en juego ,cuando se anota el premio se reparte en la columna "Premios" entre los participantes.

Este es el archivo con las modificaciones.

[ATTACH]16444.vB[/ATTACH]

Saludos

Quini 1.zip

Link to comment
Share on other sites

Ostras!!!Lo has clavado, que Crack!!

Funciona perfectamente, únicamente,(es una pijadita....), se podría poner a cero tanto la apuesta semanal como el porcentaje de participación de las personas que no jueguen?.

En la tabla de apuestas y premios, hay semanas que no se juegan,(al tener el mes una semana menos), y si introduces datos tambien contabilizan.

Y un tema importante que no había pensado, como hago para que me funcione para el año 2011 si cambian los meses y semanas?

Muchas gracias por todo, me has sorprendido mucho Ama.

Link to comment
Share on other sites

Hola Ricar

Revisa el adjunto ,con las ultimas mejoras solo hace falta que acompañe la suerte , es lo único que la hoja no hace.(Jajajaja)

Como es la columna "Saldo Actual" la que vale para ver el saldo ,al añadir un ingreso no hace falta que quede en la columna "Ingresos" asi que despues de hacer el ingreso esta muestra cero.

Las columnas "Apues. Sem." y "% de Part." se modifican:

1- Al hacer un ingreso.

2- Al modificar el numero de participantes (Si tienen saldo)

3- Al poner el premio de la jornada (Si un participante no tiene saldo para la próxima jornada muestran cero).

Nota:. Es necesario poner el premio de la jornada. Si no hay premio hay que poner cero para actualizar los datos para la próxima jornada.

Las celdas para las apuestas y los premios solo contabilizan si tienen la fecha (Es decir que si el titulo es vacío ,no se tiene en cuenta).

Con esto puedes poner la fecha en la semana correspondiente y cambiar el nombre del mes.(No afecta para los resultados).

[ATTACH]16474.vB[/ATTACH]

Saludos

Quini 2.zip

Link to comment
Share on other sites

Hola Ricar

Revisa el adjunto ,con las ultimas mejoras solo hace falta que acompañe la suerte , es lo único que la hoja no hace.(Jajajaja)

Como es la columna "Saldo Actual" la que vale para ver el saldo ,al añadir un ingreso no hace falta que quede en la columna "Ingresos" asi que despues de hacer el ingreso esta muestra cero.

Las columnas "Apues. Sem." y "% de Part." se modifican:

1- Al hacer un ingreso.

2- Al modificar el numero de participantes (Si tienen saldo)

3- Al poner el premio de la jornada (Si un participante no tiene saldo para la próxima jornada muestran cero).

Nota:. Es necesario poner el premio de la jornada. Si no hay premio hay que poner cero para actualizar los datos para la próxima jornada.

Las celdas para las apuestas y los premios solo contabilizan si tienen la fecha (Es decir que si el titulo es vacío ,no se tiene en cuenta).

Con esto puedes poner la fecha en la semana correspondiente y cambiar el nombre del mes.(No afecta para los resultados).

[ATTACH]16474[/ATTACH]

Saludos

Gracias Ama, en cuanto pueda lo miro y te digo algo.

Saludos.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Crear macros Excel

  • Posts

    • Tu información la graficaría en función a la actividad por día
    • Hola, Observo que el planteamiento o tu formulación está mal. 1. Todos los dias deberán sumar 24:00 horas excepto el domingo que unicamente trae información hasta las 6 de la mañana. 2. Lo que observo es que esas 24:00 los componen diferentes cortes de tiempo (Columna A) 3. Creo que lo que deberás graficar son los # de casos o cuantos eventos suceden cada dia. 4. Existen algunos días que rebasan las 24 horas, por eso agregué  el formato de días. Este es el resumen. Ya me comentarás  
    • Abre un Modulo ( Alf + F11) y copia la macro, el Archivo TXT colocalo en la misma carpeta donde se encuentyre tu archivo excel. Si observas la macro, procesará el archivo 1.TXT Sub opentxt()     Application.ScreenUpdating = False     Application.DisplayAlerts = False     Range("a1:b1000").ClearContents     Dim myfile As Variant, cad As String, fila As Long     ruta = ActiveWorkbook.Path     ChDir ruta     myfile = "1.txt"     fname = Dir(myfile)     If fname = "" Then         MsgBox "No existe archivo en esta carpeta"         Exit Sub     End If          Open myfile For Input As #1     fila = 1     Cells.Clear     While Not EOF(1)         Line Input #1, cad         Cells(fila, 2) = cad         fila = fila + 1     Wend     Close #1          Application.ScreenUpdating = True     Application.DisplayAlerts = True End Sub  
    • Si me haces el favor de enviarme la macro para  intentarlo te lo agradeceré enormemente... sirve que aprendo también un poco. 
    • Buenas noches a todos los Foristas. Hola JSD, eso está PERFECTO, de hecho es más de lo que tenía pensado. Verdaderamente ustedes saben y yo trato de aprender cada día. Qué más puedo decir? Gracias mil por todo este  trabajo. Otra cosa, descuide, que si yo acudo a ustedes es porque he agotado los pocos conocimientos que tengo. Realmente sólo requiero de un ligero "empujón", un ejemplo de la duda que tengo para yo continuar con el trabajo, porque de esa manera aprendo, fijándome en el código, analizándolo y después lo desarrollo a mis necesidades. No tengo palabras para agradecerle el gesto y el trabajo realizado. Estoy en deuda con usted y porqué no, con otros miembros de este Maravilloso FORO. Doy por cerrado el tema. Un abrazo a todos y en especial a usted JSD por su paciencia y dedicación para conmigo. Nunca lo olvidaré, por eso dije en una ocasión que lo consideraba Mi Amigo, aun cuando ni siquiera nos conocemos, pero es que su comportamiento, su manera de enfocar los temas, su actitud siempre positiva y su altruismo tienen consecuencia y esa consecuencia es  decirle AMIGO. Salud y bendiciones Un abrazo. Pino
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy