Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Aiuto Checkbox dinamici
Forum - Visual Basic 6 - Aiuto Checkbox dinamici

Avatar
Alex80 (Normal User)
Newbie


Messaggi: 3
Iscritto: 21/10/2008

Segnala al moderatore
Postato alle 17:07
Martedì, 21/10/2008
Ciao a tutti e complimenti per il sito, mi sono appena iscritto.
Veniamo al punto: Sto creando una macro in vba che mi genera delle chkbox dinamiche, tante quante sono le celle che passano una determinata condizione.
Esempio:
Colonna A  Colonna B
"ciao"      chkbox1
"miao"      chkbox2

Vorrei fare in modo che una volta spuntata una qualsiasi chkbox, sia possibile copiare la relativa stringa a sinistra e incollarla altrove.
Le checkbox sono collegate alle celle che le ospitano. Il problema è che non avendo a priori il nome della checkbox,non riesco a definirla per associarla alla stringa che le sta di fianco.
Se volete posto il codice .. grazie
        

PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 17:51
Martedì, 21/10/2008
Testo quotato

Postato originariamente da Alex80:
Se volete posto il codice .. grazie
          


Si forse è meglio :k:

PM Quote
Avatar
Alex80 (Normal User)
Newbie


Messaggi: 3
Iscritto: 21/10/2008

Segnala al moderatore
Postato alle 18:09
Martedì, 21/10/2008
Questo è quanto..



Codice sorgente - presumibilmente VB.NET

  1. Set ws = Worksheets("Foglio1")
  2.       Set current=   Worksheets("Foglio1").Range("Z1")
  3.     Worksheets("Foglio1").Select
  4.     Selection.Sort Key1:=ws.Range("D1"),     Order1:=xlAscending, Header:=xlGuess, _
  5.        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
  6.        DataOption1:=xlSortNormal
  7.        i = 4
  8.           For Each c In Worksheets("Foglio1").Range("D2:D300")
  9.             Worksheets("Foglio1").Select
  10.              If c <> current Then
  11.                   c.Copy Destination:=Worksheets("Foglio2").Range("A" & i)
  12.                   current = c
  13.                   i = i + 1
  14.                 End If
  15.                
  16.              If current = 0 Then
  17.                  Exit For
  18.                 End If
  19.           Next c
  20.   Set wks = Worksheets("Foglio2")
  21.      With wks
  22.         .OptionButtons.Delete
  23.         .GroupBoxes.Delete
  24.         Set myRng = .Range("C4:C" & (i - 2))
  25.            For Each myCell In myRng.Cells
  26.                With myCell
  27.                  Set GrpBox = .Parent.GroupBoxes.Add(Top:=.Top, _
  28.                        Left:=.Left, _
  29.                        Width:=.Width, _
  30.                        Height:=.Height)
  31.                        GrpBox.Caption = ""
  32.                        GrpBox.Visible = False
  33.  
  34.                  Set OptBtn = .Parent.CheckBoxes.Add(Top:=.Top, _
  35.                  Left:=.Left, _
  36.                  Width:=.Width / 2, _
  37.                  Height:=.Height)
  38.                  OptBtn.Caption = ""
  39.                  OptBtn.LinkedCell = .Address(external:=True)
  40.                  OptBtn.Display3DShading = True
  41.                  .NumberFormat = ";;;"
  42.                End With
  43.             Next myCell
  44.       Worksheets("Foglio2").Select
  45.         For Each chkBox In ActiveSheet.CheckBoxes
  46.                  chkBox.Select
  47.                  Selection.OnAction = "Macro1"
  48.            Next chkBox



Non è il massimo credo, ma funziona correttamente... dovrei fare l'aggiunta di cui parlo sopra, ma non so proprio da dove iniziare.
Dovrei creare una macro che si avvia ogni volta che si spunta la checkbox.. ma cosa mettere nella macro??

Ultima modifica effettuata da Alex80 il 21/10/2008 alle 18:16
PM Quote
Avatar
Alex80 (Normal User)
Newbie


Messaggi: 3
Iscritto: 21/10/2008

Segnala al moderatore
Postato alle 14:13
Lunedì, 27/10/2008
Nessuno può aiutarmi??

PM Quote