Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.02.2011, 06:20   #1
Lesenok
Новичок
Джуниор
 
Регистрация: 11.02.2011
Сообщений: 1
По умолчанию макрос в 2003-2007

Помогите пожалуста. на работе попросили переделать макрос с 2003 на 2007, сама не когда не сталкивалась с этим... нашла тему на вашем форуме , но не поняла куда надо быол вписывать эту строчку...

вот код:
Option Explicit

Public Const FoxDBFS As String = "C:\SERTIF\TRANS"
Public dbs As Database
Public rst As Recordset

Function Book_Init()
Dim sheet As Worksheet
Set sheet = ActiveSheet
If Dir(FoxDBFS & "\AUNIF.DBF") <> "" Then
If MsgBox("Обновить данные плавок и анализов?", 36) = vbYes Then
Show_Unif1
End If
End If
sheet.Activate
ActiveCell.Activate
End Function

Private Sub Show_Unif1()
Dim lis As Worksheet
Dim kk As Integer
Dim nn As Integer

If Dir(FoxDBFS & "\AUNIF.DBF") = "" Then
Exit Sub
End If
Set dbs = DBEngine.Workspaces(0) _
.OpenDatabase(FoxDBFS, 0, 1, "FoxPro 2.5")
Set rst = dbs.OpenRecordset("AUNIF", dbOpenTable)

Set lis = ActiveSheet

kk = 1
nn = 6
With rst
Do While Not .EOF
If kk < 33 Then Worksheets("Стр.2").Activate
If kk > 32 And kk < 65 Then Worksheets("Стр.3").Activate
If kk > 64 And kk < 97 Then Worksheets("Стр.4").Activate
If kk > 96 And kk < 128 Then Worksheets("Стр.5").Activate
'-- Вывод данных на лист:
ActiveSheet.Cells(nn, 3).Value = kk
ActiveSheet.Cells(nn, 2).Value = !Plavka
ActiveSheet.Cells(nn, 4).Value = IIf(!Massa > 0, !Massa, "")
ActiveSheet.Cells(nn, 5).Value = IIf(!Si_u > 0, !Si_u, "")
ActiveSheet.Cells(nn, 6).Value = IIf(!Fe_u > 0, !Fe_u, "")
ActiveSheet.Cells(nn, 7).Value = IIf(!Cu_u > 0, !Cu_u, "")
ActiveSheet.Cells(nn, 8).Value = IIf(!Mn_u > 0, !Mn_u, "")
ActiveSheet.Cells(nn, 9).Value = IIf(!Mg_u > 0, !Mg_u, "")
ActiveSheet.Cells(nn, 10).Value = IIf(!Zn_u > 0, !Zn_u, "")
ActiveSheet.Cells(nn, 11).Value = IIf(!Ga_u > 0, !Ga_u, "")
ActiveSheet.Cells(nn, 12).Value = IIf(!Ti_u > 0, !Ti_u, "")
ActiveSheet.Cells(nn, 13).Value = IIf(!V_u > 0, !V_u, "")
ActiveSheet.Cells(nn, 14).Value = IIf(!Cr_u > 0, !Cr_u, "")
ActiveSheet.Cells(nn, 15).Value = IIf(!Pb_u > 0, !Pb_u, "")
ActiveSheet.Cells(nn, 16).Value = IIf(!Na_u > 0, !Na_u, "")
ActiveSheet.Cells(nn, 17).Value = IIf(!As_u > 0, !As_u, "")
ActiveSheet.Cells(nn, 18).Value = IIf(!Li_u > 0, !Li_u, "")
kk = kk + 1
nn = nn + 1
If nn > 37 Then nn = 6
.MoveNext
If !Si_u = 0 Then Exit Do
Loop
End With

rst.Close
dbs.Close

End Sub

и второй модуль
Sub Вставка_простая()
'
' Вставка_простая Макрос
' Макрос записан 30.12.2004 (Парфентьев)
'
' Сочетание клавиш: Ctrl+m
'
ActiveSheet.PasteSpecial Format:="Текст", Link:=False, DisplayAsIcon:= _
False
End Sub

пожалуста, кому не трудно... помогите
Lesenok вне форума Ответить с цитированием
Старый 11.02.2011, 08:28   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
на работе попросили переделать макрос с 2003 на 2007
В абсолютном большинстве случаев никаких переделок не требуется.
С чего вы взяли, что надо что-то менять?

Цитата:
но не поняла куда надо быол вписывать эту строчку...
Какую строчку дописывать?
Куда и зачем?

Надо объединить 2 макроса?
EducatedFool вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Конвертировать формулы из [2007 Word 2007] в [2003 Word 2003] mswmd Microsoft Office Word 8 10.07.2017 17:06
Excel 2003-2007 ??? Александр82 Microsoft Office Excel 6 04.10.2010 19:19
Совместимость 2003 и 2007 chandrasecar Microsoft Office Excel 1 12.07.2010 23:01
из 2007 в 2003 samuil Microsoft Office Access 2 04.03.2009 11:59
2003 & 2007 Sk!f Microsoft Office Word 2 30.04.2008 13:55