Vai indietro   Scuola forum (scuo.la) - Forum di discussione per le scuole > Materie di Scuola > Informatica



Top 5 Stats
Latest Posts
Discussione    data, Ora  invio  Risposte  Visite   Forum
Vecchio Come constatare elettrolita forte, debole o non elettrolita?  17-04, 15:24  Abramo  1  24784   Chimica
Vecchio Quali scuole per fare due anni in uno per liceo linguistico?  12-04, 16:14  Luigia  1  16728   Scuola in generale
Vecchio L'AIDS è una malattia con sintomi visibili e riconoscibili?  12-04, 12:03  Edith  1  25184   Medicina
Vecchio Perchè il presscontroll dell'autoclave non si spegne mai?  07-04, 09:11  Marsilio  1  28463   Idraulica
Vecchio Perché colonna pescante si scarica spesso nonostante press control?  06-04, 12:33  karol  1  34026   Idraulica
Vecchio Quali cause per la comparsa di puntini neri nella visione?  06-04, 08:40  Marcos  1  30903   Medicina
Vecchio Proteste contro Istifid per fermare l'allevamento Green Hill  05-04, 15:48  insu  1  26242   Animali, Fiori, Piante
Vecchio Video in italiano sulle campagne in corso di Sea Shepherd  04-04, 09:27  Louis  1  25347   Animali, Fiori, Piante
Vecchio Quali soluzioni per avere acqua corrente in baita di montagna?  02-04, 17:18  Quinto  1  32456   Idraulica
Vecchio Quale sostituto al farmaco equilibratore neurologico Bellergil?  28-03, 19:19  Sigismondo  1  29761   Medicina

Rispondi
 
LinkBack Strumenti della discussione Modalità di visualizzazione
  #1 (permalink)  
Vecchio 07-09-2007, 02:22 PM
Junior Member
 
Registrato dal: Jul 2007
Messaggi: 3
predefinito Riempire cella fino a quando raggiungi il valore

Riempire cella fino a quando raggiungi il valore


Salve.
Ho un foglio fatto così:
_________A___________B__________C__________D__________E
7___________________casa______grande______rossa_______verde
13_______10__________?
14_______20__________?
15_______30__________?
16_______40__________?
17_______50__________?

Praticamente nella celle B7, C7, D7, E7 ci sono inserite delle parole, che possono anche essere delle frasi.
Nella colonna A in A13, A14, A15 A16 e A17 ci sono invece dei numeri che rappresentano delle lunghezze.

Ora, dove ci sono i punti di domanda ?, io devo inserire una formula che mi concateni le varie parole o frasi della riga 7 fino al raggiungimento della lunghezza della colonna A (magari aggiungendo uno spazio ogni volta che inserisce il valore di una cella diversa)

Quindi in B13 comparira "casa" perchè sono già 4 caratteri, quindi minore di 10
In B14 invece ci sarà "casa grande rossa" che sono 17 caratteri, quindi minore di 20 e così via.

In B15, B16 e B17 ci sarà "casa grande rossa verde" che sono 23 caratteri quindi minore rispettivamente di 30, 40 e 50.

Non dovrebbe essere difficile, ma io non ci salto fuori!
Grazie a chiunque mi aiuterà
Lisa
Rispondi quotando
  #2 (permalink)  
Vecchio 07-09-2007, 07:49 PM
Junior Member
 
Registrato dal: Jul 2007
Messaggi: 3
predefinito

Utilizzando due righe d'appoggio puoi fare così:

B8=LUNGHEZZA(B7) e ricopi fino a F8

B9=B8
C9=B9+C8 e ricopi fino a F9

B10=B7
C10=B10& " " &C7 e ricopi fino a F10

C13=SE(VAL.ERRORE(CERCA.ORIZZ(A13;$B$9:$F$10;1));"";SE(CERCA.ORIZZ(A13;$B$9:$F$10;1)=A13;SE(A13-1>$B$9;CERCA.ORIZZ(A13-1;$B$9:$F$10;2);"");CERCA.ORIZZ(A13;$B$9:$F$10;2)))
e ricopi fino a in basso fino a quando vuoi.

sappimi dire
ciao
Ivano
Rispondi quotando
  #3 (permalink)  
Vecchio 07-09-2007, 07:51 PM
Junior Member
 
Registrato dal: Jul 2007
Messaggi: 3
predefinito

Va, va!
Grazie mille
Rispondi quotando
  #4 (permalink)  
Vecchio 07-13-2007, 07:53 PM
Junior Member
 
Registrato dal: Jul 2007
Messaggi: 4
predefinito

Se metti le lunghezze in A2, A3, A4, A5 e le parole in C1, D1, E1, F1, puoi utilizzare questa macro (la puoi utilizzare ugualmente ma modificando i riferimenti di cella)

codice:
 Sub scrivi()
Dim temp, temp1, temp2, temp3, temp4, temp5, temp6, temp7 As String

    temp1 = Range("c1").Value
    temp2 = Range("d1").Value
    temp3 = Range("e1").Value
    temp4 = Range("f1").Value

    temp = temp1
    temp5 = temp & " " & temp2
    temp6 = temp5 & " " & temp3
    temp7 = temp6 & " " & temp4    
    
    For i = 2 To 5
    If Len(temp7) <= Range("a" & i).Value Then
        Range("b" & i).Value = temp7
    ElseIf Len(temp6) <= Range("a" & i).Value Then
        Range("b" & i).Value = temp6
    ElseIf Len(temp5) <= Range("a" & i).Value Then
        Range("b" & i).Value = temp5
    ElseIf Len(temp) <= Range("a" & i).Value Then
        Range("b" & i).Value = temp
    End If
    Next i
    
End Sub
Ciao
Valerio
Rispondi quotando
  #5 (permalink)  
Vecchio 07-13-2007, 08:08 PM
Junior Member
 
Registrato dal: Jun 2007
Messaggi: 4
predefinito

Un miglioramento della formula di Ivano potrebbe essere questa:

codice:
 =SE(LUNGHEZZA($B$7)<A13;$B$7;"")&SE(LUNGHEZZA($B$7&" "&$C$7)<A13;" "&$C$7;"")&SE(LUNGHEZZA($B$7&" "&$C$7&" "&$D$7)<A13;" "&$D$7;"")&SE(LUNGHEZZA($B$7&" "&$C$7&" "&$D$7&" "&$E$7)<A13;" "&$E$7;"")
Ciao
Giulia
Rispondi quotando
  #6 (permalink)  
Vecchio 07-13-2007, 10:19 PM
Junior Member
 
Registrato dal: Jun 2007
Messaggi: 12
predefinito

Altra soluzione, molto simile a quella di giulia: poi basta, eh?

codice:
 =SE(LUNGHEZZA(B$7)>A13;" ";SE(LUNGHEZZA(CONCATENA(B$7;" ";C$7))>A13;B7;SE(LUNGHEZZA(CONCATENA(B$7;" ";C$7;" ";D$7))>A13;CONCATENA(B$7;" ";C$7);SE(LUNGHEZZA(CONCATENA(B$7;" ";C$7;" ";D$7;" ";E$7))>A13;CONCATENA(B$7;" ";C$7;" ";D$7);CONCATENA(B$7;" ";C$7;" ";D$7;" ";E$7)))))
Saluti
Rispondi quotando
  #7 (permalink)  
Vecchio 07-13-2007, 10:27 PM
Junior Member
 
Registrato dal: Jul 2007
Messaggi: 3
predefinito

Tutte ottime soluzioni. Per chi volesse provarle, allego il file vergine (potevo forse farlo prima?)
Grazie ancora
Lisa
File allegati
Tipo di file: zip Cartel1.zip‎ (1.4 KB, 784 visite)
Rispondi quotando
  #8 (permalink)  
Vecchio 07-16-2007, 04:57 PM
teo teo non è in linea
Junior Member
 
Registrato dal: Jul 2007
Messaggi: 4
predefinito

Potresti anche fare così:
nel tuo file di Excel, nell'Editor di VBA, inserisci un nuovo Modulo e copiaci dentro questa funzione:

codice:
    Public Function ConcatenaConLimite(rng As Range, lim As Range)
    For k = rng.Column To rng.Column + rng.Columns.Count
        s = s & Cells(rng.Row, k) & " "
        If Len(s & Cells(rng.Row, k + 1)) > lim.Value Then
            ConcatenaConLimite = Trim (s)
            Exit Function
        End If
    Next
        ConcatenaConLimite = Trim (s)
    End Function
Dopo di che, nel tuo foglio di lavoro, nelle celle in cui ti interessano i risultati (quindi in B13, B14, B15, etc..), usa la nuova funzione in questo modo:

codice:
=concatenaconlimite($B$7:$E$7;A13)
Teo




Rispondi quotando
Rispondi

Strumenti della discussione
Modalità di visualizzazione

Regole d'invio
Non puoi inserire discussioni
Non puoi inserire repliche
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è attivo
Le smilie sono attive
Il codice IMG è attivo
il codice HTML è disattivato
Trackbacks are attivo
Pingbacks are attivo
Refbacks are attivo


Discussioni simili
Discussione Ha iniziato questa discussione Forum Risposte Ultimo messaggio
Riempire correttamente la bombola GPL dopo lo scatto valvola Orlando Auto, Moto, Motori 2 10-13-2009 10:02 PM
Reazioni di formazioni a stadi e globali e valore costanti string Chimica 1 04-25-2009 12:08 PM
Valore del volume mettendo nella relazione di Charles -273°C mely85ge Chimica 1 04-19-2009 11:25 PM
Volume finale gas riscaldato fino alla temperatura di 273°C mely85ge Chimica 1 04-15-2009 09:33 AM
Quali trucchi per fregare l'etilometro abbassando il valore? Scuola Auto, Moto, Motori 35 09-28-2007 04:21 PM


Tutti gli orari sono GMT +2. Attualmente sono le 12:45 PM.


© Copyright 2008-2022 powered by sitiweb.re - P.IVA 02309010359 - Privacy policy - Cookie policy e impostazioni cookie