Копировать метки значений одной переменной в другую переменную
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | 'begin description ' Копирует метки значений из одной указанной переменной в другую указанную переменную 'end description ' Автор: David Marso, 18.02.1998 ' Перевод: А. Балабанов, 15.11.2008 ' Проверено: SPSS 15.0.1.1. Option Explicit Sub Main Dim objSPSSInfo As ISpssInfo,ValueLabels() Dim varwithlabels As String, varwithoutlabels As String Dim NumVars As Long,I As Long,J As Long, NumLabels As Long Dim strSyntax As String 'Подставьте здесь имена своих переменных (varwithlabels - переменная с метками значений, varwithoutlabels - переменная, ' на которую нужно распространить метки значений), либо создайте пользовательский диалог в скрипте. ' Либо заставьте синтаксис передавать параметры этому скрипту, а в скрипте - разбирайте переданные параметры по переменным - примеч. перев. varwithlabels = "a" :varwithoutlabels="b" Set objSPSSInfo = objSpssApp.SpssInfo NumVars=objSPSSInfo.NumVariables-1 For I=0 To NumVars If objSPSSInfo.VariableAt(I)=varwithlabels Then NumLabels= objSPSSInfo.NumberOfValueLabels(I)-1 strSyntax= "VALUE LABELS " & varwithoutlabels & " " ReDim ValueLabels(1,NumLabels) For J=0 To NumLabels With objSPSSInfo strSyntax =strSyntax & .ValueAt(I,J) & " " & Chr$(34) & .ValueLabelAt(I,J) & Chr$(34) & " " End With Next J objSpssApp.ExecuteCommands(strSyntax,False) Exit For End If Next I End Sub |
Related pages
...