IALweb Homepage
Forum Home Forum Home > MS Office > Microsoft Office > Microsoft Excel
  New Posts New Posts RSS Feed - Creazione codici /tabella
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

REGISTRATEVI su IALWeb forum! E' facile e veloce! Potrete consultare tutte le sezioni del forum senza restrizioni e scrivere per dare o richiedere aiuto.
Votaci in Net-Parade

Creazione codici /tabella

 Post Reply Post Reply Page  12>
Author
Message
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Topic: Creazione codici /tabella
    Posted: 06/Ott/2017 at 16:20
Ciao A tutti 

vi richiedo l'aiuto sempre se fattibile realizzarlo con Excel e vi ringrazio anticipatamente qualsiasi sia il responso. 

file 1) - da tabella a codice 
ho una tabella con indicato in una colonna  A il codice colore dell'articolo, nella colonna B il codice articolo e dalla C alla M le varie taglie degli articoli 
Excel mi dovrebbe far in modo di creare l'articolo cosi' composto

COD.ART_COLORE_TG NELLA COLONNA " S " E INDICANDO LA  QUANTITA' DELLA CELLA  DELLA TG DI RIFERIMENTO NELLA COLONNA T
(esempio Alla fine dovrebbe uscire  del primo articolo  PIPPO_VT0101_40  (CELLA S) E  25 PCS NELLA CELLA T)
Tutti gli altri articoli  dovrebbe  andare a " cascata" uno di seguito all'altro.. 

per quanto riguarda invece la scelta della taglia  da "usare" avrei  inserito su R2 quale riga scegliere per la collegare la taglia  (in questo caso A o B o C.. - in verde)

file 2) da codice articolo a tabella
questo file invece  dovrebbe funzionare in modo  "inverso"  di quanto indicato sopra.
cioe'   dal codice articolo es. PIPPO_VT0101_40  -  me li divida ed inserisca come nella tabella  (diviso cod. articolo   - cod colore - taglia)

 sperando nell'esito positivo, vi ringrazio per l'attenzione 

buon we

qui i file... scusate non mi si allegano con Upload del forum

https://wetransfer.com/downloads/21c2fbbc08cc2afb0c1e816355eb939520171006142147/2b5c38a471349ea355d15e6f9480ca9120171006142147/7fbf8b?utm_campaign=WT_email_tracking&utm_content=general&utm_medium=download_button&utm_source=notify_recipient_email





Edited by ROBY99 - 06/Ott/2017 at 16:27
Back to Top
dodo47 View Drop Down
Moderatore
Moderatore
Avatar

Joined: 29/Dic/2008
Location: Italy
Status: Offline
Points: 9564
Post Options Post Options   Thanks (0) Thanks(0)   Quote dodo47 Quote  Post ReplyReply Direct Link To This Post Posted: 06/Ott/2017 at 19:38
Ciao
vedo molto difficile attuare quello che chiedi con formule. Ciò premesso due domande:

1) spero che nel file DA CODICE A TABELLA in R2 dovrebbe essere scritto C e non A, altrimenti non capisco.

2) il numero di pezzi è lo stesso per le tre taglie? Es:
    se tu in R2 di DA TABELLA A CODICE ART ci scrivi B, che succede?

Puoi fare un paio di esempi con le varie taglie?

saluti
domenico
win 10- office 2010
Back to Top
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Posted: 09/Ott/2017 at 13:56
ciao 

grazie per la risposta. 
rispondo in rosso alle tue domande.. 

1) spero che nel file DA CODICE A TABELLA in R2 dovrebbe essere scritto C e non A, altrimenti non capisco.
si ..nel caso indicato la lettera da indicare era  la C.  


2) il numero di pezzi è lo stesso per le tre taglie? Es:
    se tu in R2 di DA TABELLA A CODICE ART ci scrivi B, che succede?
scrivendo B utilizzo le taglie della riga 2, pertanto il codice finale definitivo uscira' nel seguente modo:
PIPPO_VT0101_04          PZ 25 
PIPPO_VT0101_06         PZ 30
PIPPO_VT0101_08         PZ 24
PIPPO_VT0101_10        PZ 15
E COSI VIA...

Se invece inserisco la A dovrebbe uscire
PIPPO_VT0101_XXS PZ 25 
PIPPO_VT0101_XS   PZ 30
PIPPO_VT0101_S        PZ 24
PIPPO_VT0101_M       PZ 15
E COSI' VIA.. 
(Sempre le stesse quantita' utilizzate nella tabella) 

grazie
Back to Top
dodo47 View Drop Down
Moderatore
Moderatore
Avatar

Joined: 29/Dic/2008
Location: Italy
Status: Offline
Points: 9564
Post Options Post Options   Thanks (0) Thanks(0)   Quote dodo47 Quote  Post ReplyReply Direct Link To This Post Posted: 09/Ott/2017 at 17:48
Ciao
per quanto riguarda il file "DA TABELLA A CODICE ART", sfruttando l'evento change del foglio1, potresti fare:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ur As Long, taglia As String, c As Integer, r As Long, t As Integer
Dim Codice As String, r1 As Long
If Not Intersect(Target, Range("R2")) Is Nothing Then
    Application.EnableEvents = False
    ur = Range("A" & Rows.Count).End(xlUp).Row
    Range("S5:T" & ur).ClearContents
    If UCase(Range("R2")) <> "A" And _
       UCase(Range("R2")) <> "B" And _
       UCase(Range("R2")) <> "C" Then Exit Sub
    taglia = UCase(Range("R2"))
    If taglia = "A" Then t = 1
    If taglia = "B" Then t = 2
    If taglia = "C" Then t = 3
    r1 = 5
    For r = 5 To ur
        For c = 3 To 13
            If Cells(r, c) <> "" Then
                Codice = Cells(r, 2) & "_" & Cells(r, 1) & "_" & Cells(t, c)
                Cells(r1, 19) = Codice
                Cells(r1, 20) = Cells(r, c)
                r1 = r1 + 1
            End If
        Next c
    Next r
End If
xit:
Application.EnableEvents = True
Exit Sub
errore:
MsgBox Err.Number & " - " & Err.Description
Resume xit
End Sub

Per quanto riguarda il file "DA CODICE A TABELLA" ho preferito sviluppare un macro non legata all'evento change, quindi da eseguire tramite un pulsante, in quanto non so se nel file tu copi i codici  oppure li cambi e poi (o prima) inserisci il valore in R2.
Tieni presente che si può far meglio (ho tirato un po' dritto) e che mancano le dim e la gestione errori
Sub Elabora()
taglia = Range("R2")
mmsg = "Errori righe" & vbCrLf
If UCase(Range("R2")) <> "A" And _
    UCase(Range("R2")) <> "B" And _
    UCase(Range("R2")) <> "C" Then Exit Sub
If taglia = "A" Then
    t = 1
    mrng = "C1:M1"
End If
If taglia = "B" Then
    t = 2
    mrng = "C2:M2"
End If
If taglia = "C" Then
    t = 3
    mrng = "C3:M3"
End If
Range("A5:M" & Rows.Count).ClearContents
ur = Range("S" & Rows.Count).End(xlUp).Row
r1 = 5
codice = Split(Range("S5"), "_")
codel = codice(1)
For r = 5 To ur
    codice = Split(Cells(r, 19), "_")
    If codice(1) <> codel Then
        r1 = r1 + 1
        codel = codice(1)
    End If
    With Range(mrng)
        Set c = .Find(codice(2), LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
            Numtaglia = codice(2)
            colore = codice(1)
            Cells(r1, 1) = colore
            Cells(r1, 2) = codice(0)
            Cells(r1, c.Column) = Cells(r, 20)
        End If
    End With
Next r
End Sub

Saluti


Edited by dodo47 - 09/Ott/2017 at 19:13
domenico
win 10- office 2010
Back to Top
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Posted: 10/Ott/2017 at 11:21
grazie Dodo47... 

scusa sono una "Capra"... 

Embarrassed

riusciresti ad inviarmi i miei file con inserite gia' le macro da te scritte ..in quanto sinceramente non so dove andare ad inserirle.. 
 
grazie e scusa ancora.... 


Edited by ROBY99 - 10/Ott/2017 at 15:05
Back to Top
dodo47 View Drop Down
Moderatore
Moderatore
Avatar

Joined: 29/Dic/2008
Location: Italy
Status: Offline
Points: 9564
Post Options Post Options   Thanks (0) Thanks(0)   Quote dodo47 Quote  Post ReplyReply Direct Link To This Post Posted: 10/Ott/2017 at 18:04
Ciao
mbè qualche base elementare occorre che tu l'abbia.
Già ti ho fornito "una pappa pronta", poi mettici del tuo facendo qualche ricerca in internet.
In fin dei conti basta un copia/incolla nel vb del foglio1 per la sub Worksheet_Change... e lo stesso, ma in un modulo per l'altra.
Prova a farlo tu.

saluti
domenico
win 10- office 2010
Back to Top
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Posted: 11/Ott/2017 at 09:19
GRAZIE.. 
ti assicuro che prima di scrivertelo avevo fatto un copia incolla  ....ma non mi partiva nulla... 

:S

comunque ci riprovo..grazie grazie
Back to Top
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Posted: 11/Ott/2017 at 10:22
ciao Dodo47

ho provato ad inserire il codice da tabella a codice ma mi segnala il seguente errore:

errore compilazione 

non valido all'interno di una routine 

 

se do ok .. mi compare "Sub converti()"  in giallo e non parte nulla.. 

e questa parte tutta in rosso.. 

 

 Application.EnableEvents = False
    ur = Range("A" & Rows.Count).End(xlUp).Row
    Range("S5:T" & ur).ClearContents
    If UCase(Range("R2")) <> "A" And _
       UCase(Range("R2")) <> "B" And _
       UCase(Range("R2")) <> "C" Then Exit Sub
    taglia = UCase(Range("R2"))
    If taglia = "A" Then t = 1
    If taglia = "B" Then t = 2
    If taglia = "C" Then t = 3
    r1 = 5
    For r = 5 To ur
        For c = 3 To 13
            If Cells(r, c) <> "" Then
                Codice = Cells(r, 2) & "_" & Cells(r, 1) & "_" & Cells(t, c)
                Cells(r1, 19) = Codice
                Cells(r1, 20) = Cells(r, c)
                r1 = r1 + 1
            End If
        Next c
    Next r


cosa sbaglio?  ConfusedConfused
che stristezza.. :(


Edited by ROBY99 - 11/Ott/2017 at 10:24
Back to Top
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Posted: 12/Ott/2017 at 13:32
CryCryCryCry
Back to Top
ROBY99 View Drop Down
Utente Senior
Utente Senior


Joined: 12/Mag/2015
Location: to
Status: Offline
Points: 320
Post Options Post Options   Thanks (0) Thanks(0)   Quote ROBY99 Quote  Post ReplyReply Direct Link To This Post Posted: 12/Ott/2017 at 17:20
Ciao 

sto cercando di capire.. 

nella mia file "DA TABELLA A CODICE" ho inserito la le tue stringhe come da te indicate ma si presenta il seguente errore : 

---------------------------
Microsoft Visual Basic, Applications Edition
---------------------------
Errore di compilazione:
Errore di sintassi
---------------------------
OK   ?  
---------------------------

si evidenzia in giallo 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

e a volte si ferma su questa stringa 
 Application.EnableEvents = False

invece nella nel file "DA CODICE A TABELLA" mi si blocca scrivendo "errore di compilazione - Errore di sintassi " e si blocca sulle seguenti stringhe 

If UCase(Range("R2")) <> "A" And _
    UCase(Range("R2")) <> "B" And _
    UCase(Range("R2")) <> "C" Then Exit Sub



non so che fare.. :(
GRAZIE e scusate.... .



Edited by ROBY99 - 12/Ott/2017 at 17:30
Back to Top
 Post Reply Post Reply Page  12>
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 10.17
Copyright ©2001-2013 Web Wiz Ltd.

This page was generated in 0,078 seconds.