Een waarde samenvoegen met teller

Status
Niet open voor verdere reacties.

deschrik

Gebruiker
Lid geworden
2 okt 2007
Berichten
122
Ik zit met een probleem.

Ik heb een kolom als volgt gedeclareerd:

Dim CMGB2 As String 'Cel Machinegroep Bewerking 2 (Kolom J)
CMGB2 = "J" & HuidigeRij

Mijn vraag is, of het mogelijk is om met behulp van een teller, automatisch naar bijv. kolom M te gaan. (Kolom M is in dit geval al ingelezen als CMGB3)

Als ik dan doe in het script: CMGB & Teller, dan moet hij automatisch wanneer hij ophoogt van CMGB1 naar CMGB2 gaan. Dit krijg ik maar niet voor elkaar.

Hopelijk heb ik mijn vraag een beetje duidelijk weergegeven en heeft iemand een goede raad.
 
Ik zit met een probleem.

Ik heb een kolom als volgt gedeclareerd:

Dim CMGB2 As String 'Cel Machinegroep Bewerking 2 (Kolom J)
CMGB2 = "J" & HuidigeRij

Mijn vraag is, of het mogelijk is om met behulp van een teller, automatisch naar bijv. kolom M te gaan. (Kolom M is in dit geval al ingelezen als CMGB3)

Als ik dan doe in het script: CMGB & Teller, dan moet hij automatisch wanneer hij ophoogt van CMGB1 naar CMGB2 gaan. Dit krijg ik maar niet voor elkaar.

Hopelijk heb ik mijn vraag een beetje duidelijk weergegeven en heeft iemand een goede raad.

Als ik het goed begrijp is CMGB2 een variabele die een address van een cel bevat. En je wilt dynamisch een nieuwe variabele maken: bijv. CMGB3 die verwijst naar een rij lager.
Als ik dat goed begrijp: Dit kan niet (althans het dynamisch aanmaken van een normale variabele!)!

Wat je wel kunt doen is bijvoorbeeld met lijsten werken:
Code:
Option Explicit
Option Base 0

Public Sub test()
    Dim sLijst() As String
    Dim iTeller As Integer
    Dim iHuidigeRij As Integer
        
    'Stel dat de huidige rij 3 is, en dat we daar vandaan starten
    iHuidigeRij = 3
    
    'We gaan een lijst maken met 10 cellen;
    'omdat ik start vanaf 0, ga ik dus maar door tot 9!)
    ReDim sLijst(9)
    For iTeller = 0 To 9
        sLijst(iTeller) = "J" & CStr(iTeller + iHuidigeRij)
    Next iTeller
End Sub

Succes!
 
Laatst bewerkt:
Voor wandelen door de kolommen:
Code:
Public Sub test()
    Dim sLijst() As String
    Dim iTeller As Integer
    Dim iHuidigeRij As Integer
    Dim iHuidigeKolom As Integer
        
    'Stel dat de huidige rij 3 is
    iHuidigeRij = 3
    iHuidigeKolom = Asc("J")
    
    'We gaan een lijst maken met 10 cellen;
    'omdat ik start vanaf 0, ga ik dus maar door tot 9!)
    ReDim sLijst(9)
    For iTeller = 0 To 9
        sLijst(iTeller) = Chr(iHuidigeKolom + iTeller) & CStr(iHuidigeRij)
    Next iTeller
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan