Új hozzászólás Aktív témák

  • Fferi50

    Topikgazda

    válasz Louro #44688 üzenetére

    Szia!
    "Valami ilyesmi lenne:
    Range("B1: B10000") = IIf(IsNumeric(Left(????,2)),Left(????,2),"")"
    Ez így biztosan nem megy. Értéket nem tudsz egy egész tartománynak adni egy lépésben (csak ha ugyanazt az értéket szeretnéd).
    For Each ciklussal mehet és cellánként kell végigmenned a tartományon. Akkor az utasítás jó, a kérdőjelek helyére annak a cellának az értékét/címét kell tenni, amit vizsgálsz.
    Ha pl. az A oszlopban van a vizsgálandó érték, akkor:
    Dim cl As Range
    For Each cl In Range(A1:A100).Cells
    cl.Offset(0,1).Value=IIF(IsNumeric(Left(cl,2)),Left(cl,2),"") 'Ez a B oszlopba írja az adott értéket
    Next
    Viszont képlettel meg lehet két lépésben csinálni, mivel ott egész tartományt lehet használni:
    Először a képlet:
    Range("B1 : B100").Formula="=IFERROR(NUMBERVALUE(LEFT(A1,2)),"""")"
    Utána átalakítjuk értékké
    Range("B1: B100).Value=Range("B1 : B100").Value

    Üdv.

Új hozzászólás Aktív témák