Как я могу найти конкретные данные, такие как Дата, в моем файле Excel, а затем записать время в столбец рядом с ним, используя VB 6.0? - PullRequest
0 голосов
/ 02 декабря 2018
Set oExcel = 
CreateObject("Excel.Application")

Dim oBook As Object
Dim oSheet As Object
Dim fName As String 'full file path and name
 fName = App.Path & "\Data" & "\" & Label4.Caption & "" & "\" & Label4.Caption & ".xls"

Set oBook = oExcel.Application.Workbooks.Open(fName)
'opens the fname workbook

Set oSheet = oExcel.Application.ActiveSheet 'activate the first worksheet

Мне удалось сохранить текущую дату (label2.caption) и Time In (label1.caption) с помощью этого:

oSheet.Range("A1").Value = Label2.Caption
oSheet.Range("B1").Value = Label1.Caption
oExcel.Quit

но дело в том, что я хочу, чтобы моя программа проверяла, есть литекущая дата и время сохранены в моем файле Excel, и сохраните время обеда, если оно есть.Моя следующая проблема: если я приду завтра, как моя программа может хранить данные в следующем ряду?

1 Ответ

0 голосов
/ 03 декабря 2018

Вы можете просто проверить, имеет ли текущая ячейка, в которую вы пытаетесь записать, значение или нет (.Value = "").Если нет, то вы можете идти вперед.Если есть значение, вам нужно выполнить несколько шагов:

a- Выберите последнее существующее значение в текущем столбце (т.е.: Ctrl + Вниз )

b- Переместитесь на одну ячейку вниз, чтобы достичь пустой ячейки

c- введите значение

Вот код для ячейки A1.Я уверен, что вы сможете скопировать его для столбца B.

If oSheet.Range("A1").Value = "" Then
      'Cell A1 is empty
      oSheet.Range("A1").Value = Label2.Caption
Else
      'Cell A1 has a previous value. Let's select the closest empty cell down
      oSheet.Range("A1").Selection.End(oExcel.xlDown).Select

      'Now, we are on the last existing cell
      'lets move one cell down to have an empty cell
      oSheet.ActiveCell.Offset(1,0).Select

      'Now we can write the value
      oSheet.ActiveCell.Value = Label2.Caption
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...